[vb] incrementation colonne excel

mirounet Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
 Geneviève -
Bonjour,
je cherche comment faire pour incrementer en colonne au niveau excel.

pour les lignes je fais i=i+1
mais pour les colonnes puisque y a des lettres je ne sais pas comment faire.
merci
A voir également:

2 réponses

Dulfalas
 
Alors j'ai fait vite fait une petite macro pour attibuer dans un fichier excel a une colone la valeur d'une ligne, par exemple on veut d'un coté sur la feuille 1:

toto
tata
tutu

a partir de la feuille 2 :

toto | tata | tutu

et biensur on veut que ca se fasse automatiquement ^^

voila mon exemple de macro pour une colonne :

[code]
'les variables sont : i et ii : entier, valeur numérique des lettres en code ascii (A = 65 Z = 91)
' j et jj : chaine de caractère, valeur en lettre de i et ii
' cpt numero de ligne dans le tableau, on commence dans cet exemple a la ligne 9
i = 65
cpt = 9

'on boucle une première fois pour les 26 premieres colones, car il n'y a ici qu'une lettre ^^

While j <> "Z"
j = Chr(i)
Cells(cpt, 4) = "'=Feuil2!" & j & "$10"
Cells(cpt, 4) = Right(Cells(cpt, 4), 12)
i = i + 1
cpt = cpt + 1
Wend

'on reinitialise les variables pour effectuer la deuxieme partie, une double boucle, car maintenant il y a 2 lettres: AA AB AC ......

i = 65
ii = 65
While cpt <> 265
ii = 65
While ii <> 91 And cpt <> 265
j = Chr(i)
jj = Chr(ii)
Cells(cpt, 4) = "'=Feuil2!" & j & jj & "$10"
Cells(cpt, 4) = Right(Cells(cpt, 4), 13)
ii = ii + 1
cpt = cpt + 1
Wend
i = i + 1
Wend
/code


j'utilise deux étapes pour déterminer la valeur des cellules, d'abord en mettant un guillemet devant, puis en l'enlevant, car quand je le faisais pas ca plantait je ne sais pas trop pourquoi, mais je ne suis pas sur que ca soit indispensable. ^^

Ce code n'est pas exactement la réponse a ta question mais il permet d'y répondre tout de même, vu qu'a l'intérieur j'incrémente les colonnes ;)
5
Geneviève
 
l'incrémentation est automatique dans excel.
0
.nono. Messages postés 90 Date d'inscription   Statut Membre Dernière intervention   17
 
Tu ne peux pas incrémenter la valeur d'une lettre. Si c'est incrémenter une lettre (A puis B puis C...), il faut utiliser l'Ascii.
Ex:
Pour une lettre, tu fait :
chr(j) = chr(j) + 1
Si j = A, j sera égal à B
3