Sub test(x As String)
Dim caract As Integer
Dim dl As Integer 'déclare la variable dl (Dernière Ligne)
Dim pl As Range 'déclare la variable pl (PLage)
Dim r As Range 'déclare la variable r (Recherche)
Dim pa As String 'déclare la variable pa (Première Adresse)
Dim li As Integer 'déclare la variable li (Ligne)
On Error GoTo ErrMsg
With Sheets("ActiveTemplates") 'prend en compte l'onglet "ActiveTemplates"
dl = .Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée dl de la colonne 1 (=A)
Set pl = .Range("A2:A" & dl) 'définit la plage pl
End With 'fin de la prise en compte de l'onglet "ActiveTemplates"
'définit la recherche r (cherche la valeur de la cellule active dans la plage pl)
Set r = pl.Find(Sheets("CREDI-Config").Range(x).Value, , xlValues, xlWhole)
If Not r Is Nothing Then 'condition 1 : si il existe au moins une occurrence
pa = r.Address 'définit l'adresse de la première occurrence trouvée
Do 'exécute
'condition 2 : si la cellule adjacente à la cellule active est identique à la cellule adjacente à l'occurrence trouvée
If r.Offset(0, 1).Value = Range(x).Offset(0, 1).Value Then
li = r.Row 'définit la ligne li
Exit Do 'sort de la boucle Do... Loop
End If 'fin de la condition 2
Set r = pl.FindNext(r) 'redéfinit la recherche r (occurrence suivante)
Loop While Not r Is Nothing And r.Address <> pa 'boucle tant qu'il existe de nouvelles occurrences ailleurs qu'en pa
End If 'fin de la cndition 1
message = Sheets("CREDI-Config").Range(x).Value & Chr(10) & Chr(10)
caract = 66
With Sheets("ActiveTemplates")
For i = 2 To 13
'utilise les variables i & li pour récupérer les données
message = message & .Cells(1, i) & " : " & .Cells(li, i) & Chr(10)
' .Range(Chr(caract) & "1").Value = WorksheetFunction.VLookup(.Range(X).Value, Workbooks("test2.xlsx").Sheets("Feuil1").Range("A1:I8"), i, False)
caract = caract + 1
Next
End With
'MsgBox (message), , "Document CREDI info"
UserForm2.teste (message)
UserForm2.Show
Exit Sub
ErrMsg:
MsgBox ("No data indexed for this document type."), , Range(x).Value
End Sub