Création de variables d’objet

Vous pouvez traiter une variable objet exactement comme l’objet auquel elle se réfère. Vous pouvez définir ou retourner les propriétés de l’objet ou utiliser n’importe laquelle de ses méthodes.

Créer une variable objet

  1. Déclarez la variable objet.

  2. Affectez la variable objet à un objet.

Déclarer une variable objet

Utilisez l’instruction Dim ou l’une des autres instructions de déclaration (Public, Private ou Static) pour déclarer une variable objet. Une variable qui fait référence à un objet doit être un Variant, un Object ou un type spécifique d’objet. Par exemple, les déclarations suivantes sont correctes :

' Declare MyObject as Variant data type. 
Dim MyObject 
' Declare MyObject as Object data type. 
Dim MyObject As Object 
' Declare MyObject as Font type. 
Dim MyObject As Font 

Remarque

Si vous utilisez une variable objet sans l’avoir déclarée, elle prend par défaut le type de donnéesVariant.

Vous pouvez déclarer une variable objet avec le type de données Object lorsque le type d’objet spécifique n’est pas connu avant l’exécution de la procédure. Utilisez le type de données Object pour créer une référence générique à n’importe quel objet.

Si vous connaissez le type d’objet spécifique, vous devez déclarer la variable objet en tant que ce type. Par exemple, si l’application contient un type d’objet Sample, vous pouvez déclarer une variable objet pour cet objet à l’aide de l’une des instructions suivantes :

Dim MyObject As Object ' Declared as generic object. 
Dim MyObject As Sample ' Declared only as Sample object. 

La déclaration de types d’objet assure la vérification de type automatique, un code plus rapide et une meilleure lisibilité.

Affecter une variable objet à un objet

Utilisez l’instruction Set pour affecter un objet à une variable objet. Vous pouvez affecter une expression d’objet ou Nothing. Par exemple, les affectations de variables d’objet suivantes sont valides.

Set MyObject = YourObject ' Assign object reference. 
Set MyObject = Nothing ' Discontinue association. 

Vous pouvez combiner la déclaration d’une variable objet avec l’affectation d’un objet à celle-ci en utilisant le mot cléNew avec l’instruction Set. Par exemple :

Set MyObject = New Object ' Create and Assign 

L’affectation de la valeur Nothing à une variable objet interrompt l’association de la variable objet à un objet spécifique. Cela permet d’éviter de changer accidentellement l’objet en changeant la variable. Une variable objet est toujours définie sur Nothing après la fermeture de l’objet associé afin que vous puissiez tester si la variable objet pointe vers un objet valide. Par exemple :

If Not MyObject Is Nothing Then 
 ' Variable refers to valid object. 
 . . . 
End If 

Bien entendu, ce test ne peut jamais déterminer avec une certitude absolue si un utilisateur a fermé l’application contenant l’objet auquel la variable objet fait référence.

Faire référence à l’instance actuelle d’un objet

Utilisez le mot clé Me pour faire référence à l’instance actuelle de l’objet où le code est en cours d’exécution. Toutes les procédures associées à l’objet actuel ont accès à l’objet auquel il est fait référence par Me. L’utilisation de Me est particulièrement pratique pour passer des informations sur l’instance actuelle d’un objet à une procédure d’un autre module. Par exemple, supposons qu’un module comporte la procédure suivante :

Sub ChangeObjectColor(MyObjectName As Object) 
 MyObjectName.BackColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256) 
End Sub

Vous pouvez appeler la procédure et passer l’instance actuelle de l’objet en tant qu’argument à l’aide de l’instruction suivante :

ChangeObjectColor Me 

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.