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
| Private Sub Worksheet_Change(ByVal Target As Range)
Dim f1 As Worksheet, f2 As Worksheet
Dim i As Long, DerLig_Tab As Long, DerCol_Tab As Long, Lig_Dest As Long, Col_Dest As Long
Dim Tabl As String, Valeur As String
Dim v As Object
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Address = "$B$3" Or Target.Address = "$B$5" Then
Set f1 = Sheets("CHOIX")
Set f2 = Sheets("Matrix")
f1.Range("H3:H100").ClearContents
DerLig_Tab = f2.Range("A" & Rows.Count).End(xlUp).Row
DerCol_Tab = f2.[XFD1].End(xlToLeft).Column
Tabl = Range(Cells(1, "A"), Cells(DerLig_Tab, DerCol_Tab)).Address
Valeur = f1.[B7]
Set v = f2.Range(Tabl).Find(Valeur, LookIn:=xlValues, lookat:=xlWhole)
Lig_Dest = 3
Col_Dest = 8
If Not v Is Nothing Then
For i = 2 To DerCol_Tab
If f2.Cells(v.Row, i) = "x" Then
f1.Cells(Lig_Dest, Col_Dest) = f2.Cells(1, i)
Lig_Dest = Lig_Dest + 1
End If
Next i
End If
End If
Application.EnableEvents = True
Set v = Nothing
Set f1 = Nothing
Set f2 = Nothing
End Sub |
Partager