Sentencia Set

Asigna una referencia de objeto a una variable o propiedad, o asocia una referencia de procedimiento a un evento.

Sintaxis

Set objectvar = {objectexpression | Nothing}

Argumentos:

  • Objectvar: necesario. Nombre de la variable o propiedad; sigue las convenciones de denominación de variables estándar.

  • Objectexpression: opcional. Expresión que consiste en el nombre de un objeto, otra variable declarada del mismo tipo de objeto o una función o método que devuelve un objeto del mismo tipo de objeto.

  • Nothing: opcional. Interrumpe la asociación de objectvar con cualquier objeto o clase específica. La asignación de objectvar a Nothing libera todos los recursos de memoria y del sistema asociados al objeto al que se hace referencia anteriormente cuando ninguna otra variable hace referencia a él.

Note:

Ya sea Objectexpression o Nothing, uno de estos valores es obligatorio.

Observaciones

Las sentencias Dim, Private, Public o ReDim solo declaran una variable que hace referencia a un objeto. No se hace referencia a ningún objeto real hasta que se utiliza la sentencia Set para asignar un objeto específico.

Por lo general, cuando se utiliza Set para asignar una referencia de objeto a una variable, no se crea ninguna copia del objeto para esa variable. En su lugar, se crea una referencia al objeto. Más de una variable de objeto puede hacer referencia al mismo objeto. Debido a que estas variables son referencias al objeto (en lugar de copias de él), cualquier cambio en el objeto se refleja en todas las variables que hacen referencia a él.

Ejemplo 1: asignación simple del objeto del sistema de archivos

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