Table des matières
Dans cet article, je vais vous montrer comment accéder à une référence de cellule en VBA Vous apprendrez à accéder à une seule cellule, ainsi qu'à plusieurs cellules ensemble.
Télécharger le cahier d'exercices
Téléchargez ce livre d'exercices pour vous exercer à la tâche pendant que vous lisez cet article.
Référence des cellules VBA.xlsm8 façons de faire référence à une cellule dans Excel VBA
Ici nous avons un ensemble de données avec le Nom du livre , Types de livres, et Prix de quelques livres d'une librairie appelée Martin Bookstore.
L'ensemble des données se situe dans l'intervalle B4:D13 de la feuille de travail.
Aujourd'hui notre objectif est d'apprendre à référencer les cellules de cet ensemble de données avec VBA.
Voici les 8 meilleures façons de se référer à une référence de cellule avec VBA dans Excel.
1. se référer à une référence de cellule en utilisant l'objet Range en VBA dans Excel
Tout d'abord, vous pouvez vous référer à une référence de cellule en utilisant la fonction Gamme objet de VBA .
Vous pouvez vous référer à la fois à une seule cellule et à une plage de cellules avec la commande Gamme objet.
Par exemple, pour accéder aux données de la cellule unique B4 utiliser la ligne de code :
Dim Cell_Reference As Range
Set Cell_Reference = Range("B4")
Le code suivant sélectionne la cellule B4 .
Il va sélectionner la cellule B4 dans la feuille de calcul active.
De même, vous pouvez accéder à une plage de cellules de cette manière.
Dim Cell_Reference As Range
Set Cell_Reference = Range("B4:D13")
Le code suivant sélectionne la plage B4:D13 .
Il va sélectionner la plage de cellules B4:D13 .
Note : Vous pouvez utiliser le Gamme directement sans le déclarer d'abord, comme :
Range("B4:D13").Select
De même, si vous voulez accéder à n'importe quelle cellule d'une feuille de calcul qui n'est pas active, utilisez le nom de la feuille de calcul avant la balise Gamme objet.
Par exemple, pour accéder à la cellule B4 de Feuille 2 utiliser :
Worksheets("Sheet2").Range("B4:D13")
2. se référer à une référence de cellule en utilisant les numéros d'index en VBA dans Excel
Vous pouvez également vous référer à une référence de cellule en utilisant les numéros d'index, mais dans cette méthode, vous ne pouvez vous référer qu'à une seule cellule.
Par exemple, pour accéder à la cellule portant le numéro de ligne 4 et le numéro de la colonne 2 ( B4 ), utiliser :
Cellules(4, 2))
Le code suivant sélectionne à nouveau la cellule B4 de la feuille de calcul active.
Il va sélectionner la cellule B4 .
Note : Pour accéder à n'importe quelle cellule d'une feuille de calcul inactive, utilisez le nom de la feuille de calcul avant la référence de la cellule.
Par exemple :
Worksheets("Sheet2").Cells(4, 2)
[ Identique à la méthode 1 ] .
3. référence à une cellule par rapport à une autre cellule en VBA dans Excel
Vous pouvez également vous référer à une référence de cellule par rapport à une autre cellule en VBA Vous devez utiliser le Fonction de décalage de VBA pour ça.
Pour accéder à la cellule 1 rangée vers le bas et 2 colonne à droite de la cellule B4 (D5) utiliser :
Range("B4").Offset(1, 2)
Le code suivant sélectionne la cellule D5 de la feuille de calcul active.
Il va sélectionner la cellule D5 .
Note : Pour faire référence à une cellule d'une feuille de calcul inactive, utilisez le nom de la feuille de calcul avant la référence de la cellule.
Par exemple :
Worksheets("Sheet2").Range("B4").Offset(1, 2)
[ Identique à la méthode 1 et 2 ] .
4. se référer à une référence de cellule en utilisant la notation de raccourci en VBA dans Excel
Il existe une notation raccourcie permettant d'accéder à n'importe quelle référence de cellule en VBA Vous pouvez vous référer à la fois à une seule cellule et à une plage de cellules de cette manière.
Pour accéder à la cellule B4 utiliser :
[B4]
Ou pour accéder à la gamme B4:D13 utiliser :
[B4:D13]
Le code suivant sélectionne la plage B4:D13 .
Il va sélectionner la gamme B4:D13 .
Note : Pour faire référence à n'importe quelle cellule d'une feuille de calcul inactive, utilisez le nom de la feuille de calcul avant la référence de la cellule.
Par exemple :
Feuilles de travail("Feuille2").[B4:D13]
[ Identique aux méthodes 1, 2 et 3 ] .
Lectures similaires :
- Comment verrouiller une cellule dans une formule Excel (2 façons)
- Raccourci de référence absolue de cellule dans Excel (4 exemples utiles)
- Comment maintenir une cellule fixe dans une formule Excel (4 méthodes simples)
- Utiliser les références de cellule dans une formule Excel (3 façons)
5. se référer à une plage nommée en VBA dans Excel
Vous pouvez vous référer à un Gamme nommée avec VBA dans Excel.
Nommons la gamme B4:D13 de la feuille de calcul active en tant que Liste de livres.
Maintenant, nous pouvons nous référer à cette Gamme nommée par la ligne de code :
Range("Book_List")
Le code suivant sélectionne la plage Liste de livres ( B4:D13 ).
Il sélectionnera la gamme Liste de livres .
Note : Pour accéder à n'importe quelle cellule d'une feuille de calcul inactive, utilisez le nom de la feuille de calcul avant la référence de la cellule.
Par exemple :
Worksheets("Sheet2").Range("Book_List")
[ Identique aux méthodes 1, 2, 3, et 4 ] .
6. se référer aux plages multiples en VBA dans Excel
Vous pouvez également faire référence à plusieurs plages dans VBA dans Excel.
Pour accéder à la gamme B4:D5 , B7:D8 et B10:D11 utiliser :
Range("B4:D5,B7:D8,B10:D11")
Cela sélectionnera les plages multiples ensemble.
Vous pouvez également utiliser le Union propriété de VBA pour accéder ensemble à plusieurs gammes.
Union(Range("B4:D5"), Range("B7:D8"), Range("B10:D11"))
Ou vous pouvez accéder à plusieurs Plages nommées ensemble.
Range("Plage_nommée_1,Plage_nommée_2")
De même, mettez le nom de la feuille de calcul devant les feuilles de calcul inactives.
Par exemple :
Worksheets("Sheet2").Range("B4:D5,B7:D8,B10:D11")
[ Identique aux méthodes 1, 2, 3, 4, et 5 ]
7. se référer aux lignes et colonnes en VBA dans Excel
Vous pouvez également faire référence à une ou plusieurs lignes ou colonnes en VBA dans Excel.
Pour accéder à la 4ème rang, utiliser :
Rangs (4)
Ça va sélectionner l'ensemble du 4ème rang.
De même, Colonnes(4) accédera à l'ensemble du 4ème colonne.
Et pour accéder à plusieurs lignes ou colonnes ensemble, utilisez la fonction Union propriété de VBA .
Pour accéder aux rangs 4, 6, 8, et 10 ensemble, utiliser :
Union(Rows(4), Rows(6), Rows(8), Rows(10))
Cela va sélectionner les rangées entières 4, 6, 8 et 10 .
Note : Ajoutez le nom de la feuille de calcul devant au cas où il s'agirait d'une feuille inactive.
Par exemple :
Worksheets("Sheet2").Rows (4)
[ Identique à la méthode 1, 2, 3, 4, 5, et 6 ]
8. se référer à l'ensemble de la feuille de calcul en VBA dans Excel
Enfin, je vous montrerai comment faire référence à l'ensemble de la feuille de travail. Pour accéder à l'ensemble de la feuille de travail en VBA utiliser :
Cellules
Ou pour faire référence à une feuille de calcul inactive (par exemple, Feuille 2 ), utiliser :
Worksheet("Sheet2").Cells
Cela va sélectionner toute la feuille de travail Feuille 2 .
Contenu connexe : Adresse relative et absolue des cellules dans la feuille de calcul
Les choses à retenir
- Pour accéder à une ou plusieurs cellules de la feuille de travail active, vous pouvez mentionner le nom de la feuille de travail devant ou non, mais pour accéder aux cellules d'une feuille de travail inactive, vous devez mentionner le nom de la feuille de travail devant la référence de la cellule.
- Même si vous pouvez accéder aux cellules d'un classeur inactif en VBA Dans ce cas, vous devez mentionner à la fois le nom du classeur et le nom de l'utilisateur. nom de la feuille de calcul devant la référence de la cellule.
Conclusion
En utilisant ces méthodes, vous pouvez vous référer à n'importe quelle référence de cellule avec VBA Vous avez des questions ? N'hésitez pas à nous les poser.