Concatener sous vba
Bonjour,
Je vous écrit pour savoir pour éspérer avoir votre aide en fait j'applique la formule concatenner sous vba elle fonctionne mais celle celle ci sort sur excel sous format texte et impossible de concatenner meme en changeant le format en standart ou nombre aucune modification. J' ai convertit également dans la barre d'outil. Sauriez vous m'aidé s'il vous plait merci d'avance.
Cordialement
Je vous écrit pour savoir pour éspérer avoir votre aide en fait j'applique la formule concatenner sous vba elle fonctionne mais celle celle ci sort sur excel sous format texte et impossible de concatenner meme en changeant le format en standart ou nombre aucune modification. J' ai convertit également dans la barre d'outil. Sauriez vous m'aidé s'il vous plait merci d'avance.
Cordialement
Configuration: Windows XP Internet Explorer 6.0
9 réponses
-
Bonjour
Je ne suis pas sûr d'avoir compris ce que tu demandais, mais je vais faire comme si.
Le VBA n'utilise pas du tout la même syntaxe que les formules des cellules excel.
En VBA, pour concaténer deux variables a et b et mettre le résultat dans une troisième (c) on écritc= a & b
-
En fait j'ai utilser pratiquement le meme code dans un autre fichier et cela a marché, contrairement à là:
wsEDM.Cells(2, 17).Resize(nbre, 1).FormulaR1C1 = "=CONCATENATE(RC[4],RC[3],RC[2]" -
wsEDM.Cells(2, 17).Resize(nbre, 1).FormulaR1C1 = "=CONCATENATE(RC[4],RC[3],RC[2])"
je n'ai pas oublié la parenthèse c'est une faute de frappe -
chez moi, ta formule marche, sauf si j'ai une valeur aberrante dans nbre
As-tu fait un msgbox cstr(nbre) pour être sûr de ce qu'il y a dedans ? -
Non je ne l'ai pas utilisé! d'ailleur je sais pas vraiment comment l'utiliser.
-
rajoute la ligne
msgbox cstr(nbre)
juste avant celle qui t'embête. Tu peux aussi utiliserdebug.print nbre
l'affichage est différent, mais ça te permet de savoir ce qu'il y a vraiment dans nbre -
Merci il me dit 3903
qu'est ce que ça veut dire? -
Je crois que j'ai fini par comprendre ton problème
avant ta ligne, ajoute WsEDM.Cells(2, 17).NumberFormat = "General"
Ça devrait mieux marcher -
je pense que la solution est simple mais désolé je débute en vba.