Conversion en vba

usdy Messages postés 258 Statut Membre -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

Dans ma procédure en vba, je fais une boucle "for" qui va de la cellule A10 à Z10 et je souhaite récuperer la lettre
correspondant à la colonne contenant le mot "prix".
Je sais que pour récuperer le numéro de la ligne il faut utiliser .row mais pour récuperer la colonne, j'ai fait un .column mais il m'affiche la colonne en nombre, c'est à dire qu'il m'affiche 2 pour la lettre B : existe-t-il un moyen de convertir un entier en lettre?

Merci de m'aider

2 réponses

blfr Messages postés 59 Statut Membre 1
 
Bien sur!Il suffit de faire

lettreColonne= Chr(leNumeroDeTaColonne + 64)

malgré les dix jours de retard j'espère que ça va te servir
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour,
Mai où ça devient plus compliquer c'est pour les colonne AA, AB, AC etc..
Vaux mieux travailler avec les numéros et employer Cells à la place de Range
Cells(Ligne,Colonne)= Résultat
ou l'inverse
Lig = ActiveCell.Row
for i= 1 to 20 'si tu a 20 colonnes
    if cells(Lig,i)="Prix" then
    'Traitement
    end if
next i

et si tu veux absolument travailler avec Range, Range(Cells(Ligne,Colonne),Cells(Ligne,Colonne))

Aussi un peu tard mais ça peu servir pour d'autre.
A+
0