Bonjour,
J'ai réalisé une petite fonction pour concaténer dans la même cellule le contenu de plusieurs autres cellules. La fonction fonctionne bien (sans jeu de mot), sauf sur un point : je souhaite que les différentes valeurs insérées dans une même cellule soient séparées par un retour à la ligne (comme si je saisissez manuellement ALT + entrée).
J'ai essayé d'insérer chr(10) (comme ci-dessous), chr(13), chr(10) + chr(13), vbCr, vbLf, vbCrLf et à chaque fois sans effet, le caractère est ignoré et les différentes valeurs sont concaténées sans retour à la ligne ni aucune séparation.
Ainsi si la première cellule contient "AA" et la seconde "BB", j'obtiens "AABB" au lieu de "AA" sur la première ligne et "BB" sur la seconde, à l'intérieur de la même cellule.
Pouvez-vous m'aider à régler ce problème ? Ci-dessous mon code pour que tout soit clair.
Par avance merci.
Function RECHERCHEPLUSV(Valeur As String, Plage As Range, Colonne As Integer)
Dim c As Range
texte = ""
For Each c In Plage.Columns(1).Cells
If c.Value = Valeur Then
If texte = "" Then
texte = c.Offset(, Colonne).Value
Else
texte = texte & Chr(10) & c.Offset(, Colonne).Value
End If
End If
Next c
RECHERCHEPLUSV = texte
End Function