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

En VBA (Visual Basic for Applications), una Property Get es una sección de una propiedad que se utiliza para devolver el valor de una propiedad de un objeto. Es especialmente útil cuando quieres controlar cómo se accede a los datos de un objeto, realizar cálculos antes de proporcionar un valor o asegurar la encapsulación de los datos dentro del objeto.

Un Property Get se empareja generalmente con Property Let (para asignar valores a propiedades no relacionadas con objetos) y Property Set (para asignar objetos a propiedades), aunque no es necesario que uses todos ellos. Solo necesitas usar los que tengan sentido en tu programa.

Aquí te muestro cómo definir y usar un Property Get en una clase en VBA:

    Class ClaseEjemplo

        ' Variable privada para almacenar el valor de la propiedad
        Private m_Valor As String

        ' Property Get para acceder al valor de la propiedad
        Public Property Get Valor() As String
            Valor = m_Valor
        End Property

        ' Puedes incluir un Property Let para asignar un valor a la propiedad
        Public Property Let Valor(vNewValue As String)
            m_Valor = vNewValue
        End Property

    End Class
    Sub Test()
        Dim miObjeto As New ClaseEjemplo
        
        ' Asignación de valor a la propiedad usando Property Let
        miObjeto.Valor = "Hola Mundo"
    
        ' Acceso al valor de la propiedad usando Property Get
        MsgBox miObjeto.Valor
    End Sub
  • Abre el editor de Visual Basic en la aplicación de Office (Excel, Word, etc.) donde estás trabajando con VBA, generalmente con `Alt + F11`.
  • Inserta una nueva clase haciendo clic en `Insertar > Clase`.
  • Crea tu clase con un Property Get. Puedes darle un nombre a tu clase en la propiedad «(Name)» en el panel de propiedades.
  • Ahora, puedes usar tu clase con la propiedad en un módulo estándar de la siguiente manera:

Al ejecutar el procedimiento Test, verás un mensaje en pantalla mostrando «Hola Mundo», que es el valor almacenado en la propiedad `Valor` de la clase `ClaseEjemplo` y accedido mediante el Property Get correspondiente.

Recuerda que al diseñar propiedades para una clase en VBA, el Property Get es utilizado para leer valores mientras que el Property Let y el Property Set se utilizan para modificar valores. Además, las propiedades proveen una capa de abstracción que puede ser útil para validar o procesar datos antes de que sean asignados o devueltos.

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