Table des matières:
Vidéo: La notion d’objet dans le langage VBA [#10 FORMATION EXCEL VBA COMPLETE] 2025
Comme vous le savez, une méthode VBA effectue une action dans Excel 2016. Un objet Range possède des dizaines de méthodes, mais vous n'en aurez pas besoin pour la plupart. Vous trouverez ici certaines des méthodes d'objet Range les plus couramment utilisées.
La méthode Select
Utilisez la méthode Select pour sélectionner une plage de cellules. L'instruction suivante sélectionne une plage dans la feuille de calcul active:
Plage ("A1: C12"). Sélectionnez
Avant de sélectionner une plage, il est souvent conseillé d'utiliser une instruction supplémentaire pour vérifier que la feuille de calcul correcte est active. Par exemple, si Sheet1 contient la plage que vous voulez sélectionner, utilisez les instructions suivantes pour sélectionner la plage:
Feuilles ("Feuille1"). Activer la plage ("A1: C12"). Sélectionnez
Contrairement à ce à quoi vous pouvez vous attendre, l'instruction suivante génère une erreur si Sheet1 n'est pas déjà la feuille active. En d'autres termes, vous devez utiliser deux instructions plutôt qu'une seule: une pour activer la feuille et une autre pour sélectionner la plage.
Feuilles ("Feuille1"). Plage ("A1: C12"). Sélectionnez
Si vous utilisez la méthode GoTo de l'objet Application pour sélectionner une plage, vous pouvez d'abord ne pas sélectionner la feuille de calcul correcte. Cette instruction active Sheet1 puis sélectionne la plage:
Application. Goto Sheets ("Feuille1"). Range ("A1: C12")
La méthode GoTo est l'équivalent VBA d'appuyer sur F5 dans Excel, ce qui affiche la boîte de dialogue GoTo.
Les méthodes Copier et Coller
Vous pouvez effectuer des opérations de copie et de collage dans VBA à l'aide des méthodes Copier et Coller. Notez que deux objets différents entrent en jeu. La méthode Copy est applicable à l'objet Range, mais la méthode Coller s'applique à l'objet Worksheet. Cela a du sens: vous copiez une plage et la collez dans une feuille de calcul.
Cette macro courte (courtoisie de l'enregistreur de macros) copie la plage A1: A12 et la colle dans la même feuille de calcul, en commençant par la cellule C1:
Sub CopyRange () Range ("A1: A12 "). Sélectionnez la sélection. Plage de copie ("C1"). Sélectionnez ActiveSheet. Coller End Sub
Notez que dans l'exemple précédent, l'objet ActiveSheet est utilisé avec la méthode Coller. C'est une version spéciale de l'objet Worksheet qui fait référence à la feuille de calcul active. Notez également que la macro sélectionne la plage avant de la copier. Cependant, vous n'avez pas besoin de sélectionner une plage avant de faire quelque chose avec. En fait, la procédure suivante accomplit la même tâche que l'exemple précédent en utilisant une seule instruction:
Sub CopyRange2 () Range ("A1: A12"). Plage de copie ("C1") End Sub
Cette procédure tire parti du fait que la méthode Copy peut utiliser un argument qui correspond à la plage de destination pour l'opération de copie.C'est quelque chose que vous pouvez trouver en vérifiant avec le système d'aide.
La méthode Clear
La méthode Clear supprime le contenu d'une plage, plus tout le formatage des cellules. Par exemple, si vous voulez zapper tout dans la colonne D, l'instruction suivante fait l'affaire:
Colonnes ("D: D"). Effacer
Vous devez connaître deux méthodes connexes. La méthode ClearContents supprime le contenu de la plage mais laisse le formatage intact. La méthode ClearFormats supprime le formatage dans la plage mais pas le contenu de la cellule.
La méthode Delete
L'effacement d'une plage diffère de la suppression d'une plage. Lorsque vous supprimez une plage, Excel déplace les cellules restantes pour remplir la plage que vous avez supprimée.
L'exemple suivant utilise la méthode Delete pour supprimer la ligne 6:
Rows ("6: 6"). Supprimer
Lorsque vous supprimez une plage qui n'est pas une ligne ou une colonne complète, Excel doit savoir comment déplacer les cellules. (Pour voir comment cela fonctionne, essayez la commande Accueil → Cellules → Supprimer → Supprimer les cellules d'Excel.)
L'instruction suivante supprime une plage et remplit l'espace résultant en déplaçant les autres cellules vers la gauche:
Plage ("C6: C10"). Delete xlToLeft
La méthode Delete utilise un argument qui indique comment Excel doit décaler les cellules restantes. Dans ce cas, une constante intégrée est utilisée (xlToLeft) pour l'argument. Vous pouvez également utiliser xlUp, une autre constante nommée.
