Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Remplacer _xlfn.CONCAT dans une formule

asvr

XLDnaute Nouveau
Bonjour

J'ai reçu un fichier excel de template pour réaliser facilement mes codes de tracking à placer dans mes campagnes media.
Or, dans la formule où est sensée se présenter la ligne de code en fonction des valeurs que je rentre dans un tableau, il y a un "_xlfn.CONCAT" qui semble ne pas être adapté a ma version d'Excel (Office Famille et petite entreprise 2016). Un message "#NOM?" s'affiche.

Comment faire pour réparer la fonction en la remplaçant par une autre?

Merci !
 

job75

XLDnaute Barbatruc
Maintenant pour remplacer _xlfn.CONCAT par une fonction VBA lisible mettez ce code dans un module standard :
VB:
Sub Corriger()
Dim w As Worksheet
For Each w In Worksheets
    w.Cells.Replace "_xlfn.CONCAT", "MyConcat", xlPart
Next
End Sub

Function MyConcat(r As Range)
For Each r In r
    MyConcat = MyConcat & CStr(r)
Next
End Function
Exécutez la macro Corriger et enregistrez le fichier en .xlsm
 

Staple1600

XLDnaute Barbatruc
Re

Job75
Il y a une raison pour ne pas utiliser CONCATENER?
J'ai testé un CTRL+H et cela semble fonctionner (test sur XL 2013)
Code:
Sub Macro1()
Selection.Replace What:="_xlfn.CONCAT", Replacement:="CONCATENER", LookAt:=xlPart, SearchOrder:=xlByRows
End Sub
 

job75

XLDnaute Barbatruc
Oui bien sûr JM mais on peut penser qu'on a utilisé CONCAT pour concaténer une plage de cellules.

Ce que ne peut pas faire CONCATENER (qui en fait est peu utilisé car on se sert de l'opérateur "&").
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…