VBA Excel : sélection d'une plage variable

Résolu/Fermé
Pyanitsa - 2 juil. 2010 à 16:20
 Mima - 24 sept. 2021 à 12:07
Bonjour tout le monde,

Je dois sélectionner une plage de cellules en fonction d'une variable i, qui représente le numéro de la ligne voulue. Suite à des recherches sur ccm.net et d'autres forums, j'ai trouvé le code suivant :

Dim MaPlage As Range

MaPlage = Range("A" & i & ":L" & i)


Je suis sur Excel 2003 et qqc cloche : VBA me renvoie "erreur d'éxecution 91 : variable objet ou variable de bloc With non définie". Vraiment, je ne comprends pas. Quelqu'un a une idée ?

Merci d'avance,
Pyanitsa.

7 réponses

thev Messages postés 1851 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 15 avril 2024 681
2 juil. 2010 à 18:30
Range("A" & i & ":L" & i) représente une plage de cellules, c'est à dire un "objet Excel" au même titre qu'un classeur, une feuille, une cellule.
Pour assigner une variable (= MaPlage) à un objet, il faut utiliser l'instruction SET.

Cela dit , pour assigner ta plage variable de cellules , je préfère l'instruction :

set MaPlage = Columns("A:L").Rows(i)


que je trouve plus lisible.
32
Nickel, Merci beaucoup, Thev ! Mais pourquoi y avait-il besoin du 'set' ? (je débute tout juste en programmation)
2
MRC gros j'ai éviter d'etre un robot grace a ca
0
Merci beaucoup, méthode simple, mais éfficace
0