Instruction Set

Affecte une référence d'objet à une variable ou à une propriété, ou associe une référence de procédure à un événement.

Syntaxe

Set objectvar = {objectexpression | Nothing}

Arguments :

  • objectvar : requis. Nom de la variable ou de la propriété. Respecte les conventions de dénomination de variable standard.

  • objectexpression : facultatif. Expression composée du nom d'un objet, d'une autre variable déclarée du même type d'objet, ou d'une fonction ou d'une méthode qui renvoie un objet du même type.

  • Nothing : facultatif. Permet de mettre fin à l'association entre objectvar et un objet ou une classe spécifique. L'affectation de Nothing à objectvar libère toutes les ressources système et de mémoire associées à l'objet précédemment référencé lorsqu'aucune autre variable n'y fait référence.

Note:

Il est obligatoire d'indiquer soit objectexpression soit Nothing.

Remarques

Les instructions Dim, Private, Public ou ReDim déclarent uniquement une variable qui fait référence à un objet. Aucun objet réel n'est référencé tant que vous n'avez pas utilisé l'instruction Set pour affecter un objet spécifique.

En général, lorsque vous utilisez Set afin d'affecter une référence d'objet à une variable, aucune copie de l'objet n'est créée pour cette variable. Au lieu de cela, une référence à l'objet est créée. Plusieurs variables d'objet peuvent faire référence au même objet. Etant donné que ces variables sont des références à l'objet (plutôt que des copies), toute modification apportée à l'objet est reflétée dans toutes les variables qui y font référence.

Exemple 1 : affectation simple de l'objet File System

Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")  ' Create a FileSystemObject
Set tso = fso.CreateTextFile("C:\testfile.txt", True) ' Create a new text file
' Now you can work with the text stream object, such as writing to it
tso.WriteLine("Hello, VBScript!")
tso.Close  ' Always close the file when done