Bonjour,
je suis nouveau dans le monde du code mais j'ai l'intention d'en faire mon metier donc je m'obstine. j'espere que mon sujet est plus ou moins au bon endroit.
Je suis etudiant en info et j'ai un projet de faire un macro/procedure qui pourrai verifier un tableau de sudoku complet. j'ai eu plusieurs cours et j'ai lut VBA for dummies et pourtant je n'ai pas pu finir mon program voici la ou j'en suis pour le moment:
Function isUnique(Inrange) As Boolean
Dim ones As Boolean
Dim twos As Boolean
Dim threes As Boolean
Dim fours As Boolean
Dim fives As Boolean
Dim sixes As Boolean
Dim sevens As Boolean
Dim eights As Boolean
Dim nines As Boolean
Dim i As Integer
For i = 1 To 9
If Cells(i, 1) <> Cells(i, 2) _
Then ones = False
MsgBox (Cells(i, 1) & Cells(i, 2) & ones)
And Cells(i, 1) <> Cells(i, 3) And Cells(i, 1) <> Cells(i, 4) And Cells(i, 1) <> Cells(i, 5) And Cells(i, 1) <> Cells(i, 6) And Cells(i, 1) <> Cells(i, 7) And Cells(i, 1) <> Cells(i, 8) And Cells(i, 1) <> Cells(i, 9)
Next i
If Cells(1, 2) <> Cells(1, 1) And Cells(1, 2) <> Cells(1, 3) And Cells(1, 3) <> Cells(1, 4) And Cells(1, 2) <> Cells(1, 5) And Cells(1, 2) <> Cells(1, 6) And Cells(1, 2) <> Cells(1, 7) And Cells(1, 2) <> Cells(1, 8) And Cells(1, 2) <> Cells(1, 9) _
Then twos = True
If Cells(1, 3) <> Cells(1, 1) And Cells(1, 3) <> Cells(1, 2) And Cells(1, 3) <> Cells(1, 4) And Cells(3, 1) <> Cells(1, 5) And Cells(1, 3) <> Cells(1, 6) And Cells(1, 3) <> Cells(1, 7) And Cells(1, 3) <> Cells(1, 8) And Cells(1, 3) <> Cells(1, 9) _
Then threes = True
If Cells(1, 4) <> Cells(1, 1) And Cells(1, 4) <> Cells(1, 2) And Cells(1, 4) <> Cells(1, 3) And Cells(1, 4) <> Cells(1, 5) And Cells(1, 4) <> Cells(1, 6) And Cells(1, 4) <> Cells(1, 7) And Cells(1, 4) <> Cells(1, 8) And Cells(1, 4) <> Cells(1, 9) _
Then fours = True
If Cells(1, 5) <> Cells(1, 1) And Cells(1, 5) <> Cells(1, 2) And Cells(1, 5) <> Cells(1, 3) And Cells(1, 5) <> Cells(1, 4) And Cells(1, 5) <> Cells(1, 6) And Cells(1, 5) <> Cells(1, 7) And Cells(1, 5) <> Cells(1, 8) And Cells(1, 5) <> Cells(1, 9) _
Then fives = True
If Cells(1, 6) <> Cells(1, 1) And Cells(1, 6) <> Cells(1, 2) And Cells(1, 6) <> Cells(1, 3) And Cells(1, 6) <> Cells(1, 4) And Cells(1, 6) <> Cells(1, 5) And Cells(1, 6) <> Cells(1, 7) And Cells(1, 6) <> Cells(1, 8) And Cells(1, 6) <> Cells(1, 9) _
Then sixes = True
If Cells(1, 7) <> Cells(1, 1) And Cells(1, 7) <> Cells(1, 2) And Cells(1, 7) <> Cells(1, 3) And Cells(1, 7) <> Cells(1, 4) And Cells(1, 7) <> Cells(1, 5) And Cells(1, 7) <> Cells(1, 6) And Cells(1, 7) <> Cells(1, 8) And Cells(1, 7) <> Cells(1, 9) _
Then sevens = True
If Cells(1, 8) <> Cells(1, 1) And Cells(1, 8) <> Cells(1, 2) And Cells(1, 8) <> Cells(1, 3) And Cells(1, 8) <> Cells(1, 4) And Cells(1, 8) <> Cells(1, 5) And Cells(1, 8) <> Cells(1, 6) And Cells(1, 8) <> Cells(1, 7) And Cells(1, 8) <> Cells(1, 9) _
Then eights = True
If Cells(1, 9) <> Cells(1, 1) And Cells(1, 9) <> Cells(1, 2) And Cells(1, 9) <> Cells(1, 3) And Cells(1, 9) <> Cells(1, 4) And Cells(1, 9) <> Cells(1, 5) And Cells(1, 9) <> Cells(1, 6) And Cells(1, 9) <> Cells(1, 7) And Cells(9, 5) <> Cells(1, 8) _
Then nines = True
If ones And twos And threes And fours And fives And sixes And sevens And eights And nines = True Then isUnique = True
MsgBox (ones)
End Function
Sub test()
Dim i As Integer
'For i = 1 To 9
result = isUnique("A1,I9")
'MsgBox (result)
'Next i
End Sub
la partie en rouge est la ou je bloc j'ai un tableau 9x9 excel avec des chiffres de 1 a 9 sur certaines collons j'ai délibrament mis des repetitions ce code est censé les reperer. je pense sincerement que mon code est pourrie donc je ne serai pas ettonner si vous me dites de recommencer.
celq etqnt dis toute aide serai le bienvenue.
merci
John