1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
| Sub MaMacro()
Dim Myrange As Range 'Plage de cellules des scores
'Instancié la plage.
Dim L_JoueurA As Long
Dim L_JoueurB As Long
Dim L_Joueur As Long
L_JoueurA = ActiveWorkbook.Worksheets("MaFeuille").Range("D4").CurrentRegion.Rows.Count
L_JoueurB = ActiveWorkbook.Worksheets("MaFeuille").Range("h4").CurrentRegion.Rows.Count
L_Joueur = L_JoueurA
If L_JoueurA < L_JoueurB Then L_Joueur = L_JoueurB
Set Myrange = ActiveWorkbook.Worksheets("MaFeuille").Range("D4:L" & 3 + L_Joueur)
Dim L As Long
'Pour L =1 jusqu'à la dernière ligne de la plage.
For L = 1 To Myrange.Rows.Count
Test162 Myrange, L, 1, 2, 5
Test162 Myrange, L, 5, 6, 1
Test81 L, Myrange
Empoche81 L, Myrange
Next
End Sub
Sub Empoche81(L, Myrange)
If Val(Myrange(L, 1)) <> 0 And Val(Myrange(L, 5)) <> 0 And Myrange(L, 9) <> 1 Then
If Myrange(L, 1) < Myrange(L, 5) Then
Myrange(L, 9) = 1
Myrange(L, 5) = Myrange(L, 5) + ActiveWorkbook.Sheets("MaFeuille").[a1]
ElseIf Myrange(L, 1) > Myrange(L, 5) And Myrange(L, 9) <> 1 Then
Myrange(L, 9) = 1
Myrange(L, 1) = Myrange(L, 1) + ActiveWorkbook.Sheets("MaFeuille").[a1]
ActiveWorkbook.Sheets("MaFeuille").[a1] = 0
End If
End If
If Val(Myrange(L, 1)) > 161 And Myrange(L, 9) <> 1 Then
Myrange(L, 9) = 1
Myrange(L, 1) = Myrange(L, 1) + ActiveWorkbook.Sheets("MaFeuille").[a1]
Myrange(L, 5) = 0
ActiveWorkbook.Sheets("MaFeuille").[a1] = 0
Myrange(L, 9) = 1
End If
If Val(Myrange(L, 5)) > 161 And Myrange(L, 9) <> 1 Then
Myrange(L, 9) = 1
Myrange(L, 5) = Myrange(L, 5) + ActiveWorkbook.Sheets("MaFeuille").[a1]
Myrange(L, 1) = 0
ActiveWorkbook.Sheets("MaFeuille").[a1] = 0
Myrange(L, 9) = 1
End If
DoEvents
End Sub
Sub Test81(L, Myrange)
If Myrange(L, 5) = 81 And Myrange(L, 9) <> 1 Then
Myrange(L, 5) = 0
Myrange(L, 1) = 81
ActiveWorkbook.Sheets("MaFeuille").[a1] = ActiveWorkbook.Sheets("MaFeuille").[a1] + 81
Myrange(L, 9) = 1
ElseIf Myrange(L, 1) = 81 And Myrange(L, 9) <> 1 Then
Myrange(L, 1) = 0
Myrange(L, 5) = 81
ActiveWorkbook.Sheets("MaFeuille").[a1] = ActiveWorkbook.Sheets("MaFeuille").[a1] + 81
Myrange(L, 9) = 1
End If
DoEvents
End Sub
Sub Test162(Myrange As Range, L As Long, ColA As Long, ColB As Long, ColC As Long)
If Myrange(L, ColA) < 162 And Myrange(L, ColA) > 0 Then
If Myrange(L, ColA) <> 81 And Myrange(L, ColA) <> 91 And Myrange(L, ColA) <> 71 Then
If Myrange(L, ColB) = 1 Then
If 162 - Myrange(L, ColA) = Myrange(L, ColC) Then
Myrange(L, ColC) = 162 - Myrange(L, ColA)
Myrange(L, ColA) = Myrange(L, ColA) + 20
End If
Else
Myrange(L, ColC) = 162 - Myrange(L, ColA)
End If
End If
End If
If Myrange(L, ColA) > 161 And Myrange(L, 9) <> 1 Then
Myrange(L, ColC) = 0
End If
If Myrange(L, ColA).Value <> "" And Myrange(L, ColA) = 0 And Myrange(L, 9) <> 1 Then
Myrange(L, ColC) = 162
End If
DoEvents
End Sub
:cry: |