Bonjour tout le monde,
Je souhaite réaliser une recherche de valeur (exemple : AA-0001) qui correspond à la référence d'un document dans un chemin d'accès (exemple : \\CHEMIN\XX\AA-0001.PDF). Les références se trouvant dans la colonne B et les chemins d'accès dans la colonne A.
Pour faire cela, j'utilises cette formule :
=SIERREUR(RECHERCHEV("*"&B2&"*";$A$2:$A$100;1;FAUX);"")
L'objectif est de faire concorder la référence avec le chemin d'accès pour cette référence dans une colonne C.
Cela fonctionne parfaitement s'il existe un seul document (un seul chemin d'accès) par référence. Mon problème c'est lorsqu'il existe plusieurs documents (plusieurs chemins d'accès) pour une référence. Je souhaite concaténer les chemins d'accès en utilisant un séparateur "###" entre les chemins d'accès.
Je pensais dupliquer mes références réaliser la RECHERCHEV pour toutes les lignes et utiliser une macro de ce type (déjà utiliser pour un autre fichier) pour concaténer :
Cependant, en réalisant cela, ma RECHERCHEV pour la référence me sort toujours le même chemin d'accès et non tous les chemins d'accès différents pour la référence.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Sub CONCATENER() Set ws1 = Sheets("brut") Set ws2 = Sheets("résultat") sep = "###" dl = ws1.Cells(Rows.Count, 1).End(xlUp).Row ws1.Rows("1:" & dl).Copy ws2.Rows(1) With ws2 For i = dl - 1 To 2 Step -1 If .Cells(i + 1, 1) = .Cells(i, 1) Then .Cells(i, 2) = .Cells(i, 2) & sep & .Cells(i + 1, 2) .Rows(i + 1).Delete shift:=xlUp End If Next i End With End Sub
J'espère avoir été clair, n'hésitez pas à revenir vers moi pour des explications supplémentaires.
Merci d'avance à tous ceux qui prendront le temps de jeter un coup d'œil.
Partager