Un objet est un élément d’Excel, par exemple Range est un objet contenant des cellules. Chaque objet possède :
des méthodes : ce sont des actions que l’on veut appliquer faire à un objet. Par exemple, la méthode Close appliquée à l’objet Workbook (classeur) ferme le classeur.
Les actions sont comme les fonctions d’Excel (SOMME…) : elles peuvent avoir des arguments. Par exemple, la méthode Save d’un objet Workbook a besoin d’un argument Name, soit le nom que l’on souhaite donner au classeur.
des propriétés : ce sont des caractéristiques de l’objet. Certaines propriétés sont en lecteur seule (on ne peut la modifier, seulement la lire), d’autres en lecture/écriture (on peut les lire et les modifier).
Par exemple, on peut lire la propriété Path de l’objet Workbook pour connaître le chemin du classeur ouvert. On peut modifier la propriété Name (nom dans l’onglet) d’un Worksheet (feuille).
Affecter un objet
L’affectation consiste à attribuer un objet réel à une variable objet. Le mot Set est indispensable dans le mode Objet Il est interdit dans le mode procédural classique.
Affectation selon le mode
Mode
Procédural
Objet
Mode
Procédural
Objet
1
Déclaration
Dim a As String
Dim obj As Worksheet
2
Affectation
a="bonjour"
Set obj = Worksheets(1)
There are no rows in this table
2
Count
Collections d’objet
Certains objets sont de type Collection. Un objet Collection contient une liste d’objets. Par exemple, l’objet Workbooks (classeurs ouverts) contient la collection des objets Workbook (classeur ouvert), ou, dit autrement, Workbooks contient la liste des classeurs ouverts. Chaque élément d’une collection est appelé membre.
Toutes les collections contiennent toujours 3 méthodes : Add, Item et Count.
Méthode Add
Permet d’ajouter un objet à une collection. Par exemple :
Workbooks.Add
Cette commande fait deux choses :
crée un nouveau classeur (comme le raccourci CTRL + N)
ajoute un membre à la collection
L’objet créé doit être placé dans une variable de même type. Par exemple :
Dim LeClasseur As Workbook
Set LeClasseur = Workbooks.Add
Méthode Item
Permet de désigner un membre de la collection. Par exemple :
Worksheets.Item(1).Delete
Cette commande désigne le membre dont le numéro d’index (= l’ordre) est le 1. Ici, c’est donc la feuille 1 (l’onglet le plus à gauche) qui est désignée. On utilise alors une méthode sur l’item, ici la méthode Delete (suppression d’une feuille).
On peut aussi désigner un membre par son nom :
La commande Workbooks.Item("Classeur1.xls").Close ferme le classeur ouvert Classeur1.xls.
La commande Worksheets.Item("Feuil2").Delete supprime la feuille nommée Feuil2.
La méthode Item étant la propriété par défaut, sa mention est facultative :
La commande Worksheets("Feuil2").Delete fonctionne donc très bien, en plus d’être plus compacte.
Méthode Count
Permet de compter le nombre d’éléments d’une collection.