Vba-excel cellule variable

Résolu
cs_refaat Messages postés 30 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 7 septembre 2008 - 11 août 2008 à 10:46
cs_refaat Messages postés 30 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 7 septembre 2008 - 11 août 2008 à 11:36
Bonjour à tous,
peut etre que je pose ma question dans le mauvais forum mais je ne sais pas comment faire!
mon problème est le suivant:
je veux récupérer l'adresse d'une cellule de position variable.
en fait cette cellule et la dernière cellule d'un tableau (à 2 colonnes et à un nombre de lignes variables).
EXP: pour un tableau à 2 colonnes et à 4 lignes c'est la cellule (4,2).
donc comment la référencer!
c'est cette boucle qui remplit la dernière colonne et donc la dernière cellule:

For i = 8 To (8 + GetUpper(arrayOfNames) - 3)
        Range("C" & i).Value = arrayOfPrices(i - 7)
Next i

Merci d'avance.

4 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
11 août 2008 à 11:22
    Dim ve As Long
    ve = Range("C65536").End(xlUp).row
    Range("B6:C" & ve).Select

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
11 août 2008 à 10:57
Salut,

pour avoir la dernière ligne d'une colonne, il faut partir de la dernière ligne possible (65536) et remonter pour avoir la dernière utilisée.
Exemple pour la colonne B :

MsgBox Range("B65536").End(xlUp).Row

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
cs_refaat Messages postés 30 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 7 septembre 2008
11 août 2008 à 11:08
c'est vrai. ça m'a affiché le numéro de la dernière cellule (9 dans mon cas).
merci
mais moi je veux récupérer cette cellule pour spécifier une plage bien déterminée.
en d'autres termes je veux faire ça:

    Dim ve
    ve = Range("C65536").End(xlUp).row
    Range("B6:ve").Select

mais ça ne fonctionne pas.
j'espère avoir été clair.
Merci une autre fois mortalino.
0
cs_refaat Messages postés 30 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 7 septembre 2008
11 août 2008 à 11:36
ben merci beaucoup mortalino. ça marche!
tu es vraiment gentil.
je suis heureux.
Merci une autre fois.
0
Rejoignez-nous