Rechercher : dans
Par :

Concatener sous vba

Dernière réponse le 29 mai 2009 à 08:33:23 rigaf45, le 28 mai 2009 à 15:41:50 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP Internet Explorer 6.0

Meilleures réponses pour « Concatener sous vba » dans :
VBA et les collections d'objets. VoirVBA et les collections d'objets Quand plusieurs (beaucoup de) contrôles sont mis sur une feuille ou un Userform il est parfois fastidieux d'écrire du code dans chaque évènement des contrôles. Ce Tuto vous permet de traiter vos contrôles comme...
Javascript - Concaténation de chaînes de caractères VoirLe terme "concaténer" signifie joindre deux chaînes bout à bout pour n'en former qu'une seule. Dans la plupart des langages tels que PHP, la concaténation se fait avec le caractère ".". En javascript, il suffit d'utiliser le caractère plus (+) ou...
PHP - Concaténation VoirPHP permet de concaténer des chaînes de caractères grâce à l'opérateur "." : $concatenation= $a . $b; Ou encore pour affecter, dans la variable $a, la valeur de la concaténation de $a et de $b : $a.=$b; Pour concaténer des chaînes et des...

1

rigaf45, le 28 mai 2009 à 15:53:25

Je pense que la solution est simple mais désolé je débute en vba.

Répondre à rigaf45

2

le père, le 28 mai 2009 à 16:14:47

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 écrit

c= a & b

Répondre à le père

3

rigaf45, le 28 mai 2009 à 16:23:47

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]"

Répondre à rigaf45

4

rigaf45, le 28 mai 2009 à 16:26:14

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

Répondre à rigaf45

5

le père, le 28 mai 2009 à 16:52:55

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 ?

Répondre à le père

6

rigaf45, le 28 mai 2009 à 17:06:10

Non je ne l'ai pas utilisé! d'ailleur je sais pas vraiment comment l'utiliser.

Répondre à rigaf45

7

le père, le 28 mai 2009 à 17:22:23

Rajoute la ligne

msgbox cstr(nbre)
juste avant celle qui t'embête. Tu peux aussi utiliser
debug.print nbre
l'affichage est différent, mais ça te permet de savoir ce qu'il y a vraiment dans nbre

Répondre à le père

8

rigaf45, le 28 mai 2009 à 17:32:15

Merci il me dit 3903
qu'est ce que ça veut dire?

Répondre à rigaf45

9

 le père, le 29 mai 2009 à 08:33:23

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

Répondre à le père