¿Cómo usar la instrucción Property Let en VBA?

En VBA (Visual Basic for Applications), la instrucción `Property Let` se usa para crear una propiedad en una clase que asigna (o «let») un valor a una variable privada dentro de esa clase. Esto permite encapsular datos y controlar cómo se asignan los valores a las variables internas del objeto.

Para utilizar `Property Let`, debes tener una clase personalizada en tu proyecto de VBA. A continuación, te proporciono los pasos para utilizar `Property Let`:

  • Defina la Clase: Primero, necesitas definir una clase personalizada en tu editor de VBA. Puedes hacerlo agregando un nuevo módulo de clase a tu proyecto.
  • Cree una variable privada: Dentro de tu clase, define una variable privada que almacene el valor que deseas exponer a través de tu propiedad.
  • Use `Property Let` para asignar el valor: Define un procedimiento `Property Let` para asignar un valor a la variable privada.

Aquí tienes un ejemplo de cómo crear una clase personalizada con una propiedad Let en VBA:

' Define la clase personalizada
Class MyClass
    ' Variable privada para almacenar el valor de la propiedad
    Private m_MyProperty As String
    
    ' Procedimiento Property Let para asignar un valor a la propiedad
    Public Property Let MyProperty(value As String)
        m_MyProperty = value
    End Property
    
    ' Opcional: Property Get para recuperar el valor de la propiedad
    Public Property Get MyProperty() As String
        MyProperty = m_MyProperty
    End Property
End Class

En este ejemplo, `MyProperty` es una propiedad que puedes leer y escribir desde fuera de la clase. La sección `Property Let` asigna un nuevo valor a la variable privada `m_MyProperty`, mientras que `Property Get` te permite leer el valor de `m_MyProperty`.

Sub TestMyClass()
    ' Crear una nueva instancia de MyClass
    Dim obj As New MyClass
    
    ' Asignar un valor a la propiedad utilizando 'Property Let'
    obj.MyProperty = "Hola Mundo"
    
    ' Opcional: Leer el valor de la propiedad utilizando 'Property Get'
    MsgBox obj.MyProperty
End Sub
  • Utiliza la propiedad en tu código: Una vez definida la clase y la propiedad, puedes crear una instancia de la clase y usar la propiedad como se muestra a continuación:

En este caso, la asignación `obj.MyProperty = «Hola Mundo»` llama al procedimiento `Property Let` de la clase `MyClass` y establece el valor de `m_MyProperty`. Luego puedes recuperar el valor con `Property Get` para mostrarlo en un cuadro de mensaje.

Es importante notar que `Property Let` se usa para definir propiedades que se asignarán valores que NO son objetos. Para propiedades que van a asignar un objeto, utilizarías `Property Set` en lugar de `Property Let`.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto

Deja un comentario