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
| Sub Traiter()
Dim Dep, Res
Dim i As Integer, j As Integer, m As Integer, n As Integer
Dep = Worksheets("Table DPT").Range("A1").CurrentRegion
m = UBound(Dep, 1)
If m > 1 Then
Res = Worksheets("Feuil1").Range("A1").CurrentRegion
n = UBound(Res, 1)
If n > 1 Then
Effacer Res
For i = 2 To m
For j = 2 To n
If InStr(Res(j, 4), Dep(i, 1)) > 0 Then Croix Res, j, Dep(i, 3)
Next j
Next i
End If
End If
Worksheets("Feuil1").Range("A1").CurrentRegion = Res
End Sub
Private Sub Croix(ByRef Tb, ByVal k As Integer, ByVal Str As String)
Dim i As Integer
For i = 5 To UBound(Tb, 2)
If Tb(1, i) = Str Then
Tb(k, i) = "X"
Exit For
End If
Next i
End Sub
Private Sub Effacer(ByRef Tb)
Dim i As Integer, j As Integer
For i = 2 To UBound(Tb, 1)
For j = 5 To UBound(Tb, 2)
Tb(i, j) = Empty
Next j
Next i
End Sub |
Partager