Módulos
Módulos
Los módulos de clase funcionan de una manera muy diferente a los módulos ordinarios en el sentido de que facilitan la creación de un Modelo de Objeto de Componente (COM) que luego puede ser utilizado dentro de su código VBA normal.
Efectivamente, usted crea un objeto que funciona de la misma manera que un objeto incorporado de Excel como ‘Worksheets’. En el objeto Worksheets, tiene una serie de propiedades y métodos que le permiten obtener el número de hojas de trabajo dentro de un libro de trabajo o cada nombre individual de una hoja de trabajo, o numerosas otras informaciones.
Cuando creas un nuevo Objeto de esta manera, estás creando un bloque de construcción que puede ser utilizado en cualquier lugar dentro de VBA. El objeto tiene una serie de propiedades y métodos a los que puede acceder su código VBA desde cualquier lugar del libro de trabajo sin tener que volver a escribir el código.
Además de referirse a su nuevo objeto desde un módulo VBA estándar, también puede utilizarlo en el código detrás de un Formulario que es parte de su aplicación personalizada.
También puede utilizarlo cuando haya colocado controles Active X en una hoja de cálculo, como un botón de comando o un desplegable. Todos estos controles utilizan VBA, y su nuevo objeto puede incorporarse fácilmente al código de eventos de estos controles.
También puede convertir su objeto en un complemento de Excel. Su objeto estará automáticamente disponible para otros usuarios que tengan ese complemento cargado. Esto añade su propia arquitectura de varios niveles a su aplicación de Excel.
Excel es una aplicación de varios niveles. Está la capa de servicios al cliente, que maneja la ventana de la hoja de trabajo con la que el usuario está familiarizado. El modelo de objetos de Excel es la siguiente capa por debajo. Presione F2 en un módulo VBA y podrá ver el enorme número de objetos y miembros de esos objetos que son el motor de Excel. Tenga en cuenta que su nuevo objeto también se mostrará aquí.
Finalmente, debajo de todo esto, tienes la capa de servicios de datos que contiene todos los datos que has introducido en las hojas de trabajo y celdas. Excel accede a esto utilizando el modelo de objetos de Excel.

La creación de un módulo de clase le permite ampliar el módulo de objetos de Excel con sus propios objetos y miembros personalizados.
Este artículo le explica cómo crear una jerarquía simple de objetos utilizando Módulos de Clase.
Ventajas del uso de los módulos de clase
- Puede desarrollar un bloque de construcción robusto que puede ser utilizado en cualquier número de aplicaciones de Excel diferentes
- Una vez que se ha probado a fondo, se puede confiar en que siempre producirá los resultados correctos de la misma manera que los objetos de Excel incorporados
- Si se actualiza el código en otra parte de la aplicación, el nuevo objeto seguirá funcionando de la misma manera
- Se puede utilizar el nuevo objeto en otras aplicaciones de Excel como complemento
- Los objetos pueden ser reutilizados en otras aplicaciones y ayuda a la depuración
Desventajas del uso de módulos de clase
- Pueden ser difíciles de crear y entender.
- Las convenciones de nomenclatura son muy importantes porque esto es lo que verá cuando utilice su objeto dentro de un módulo normal.
- Si no ha creado un módulo de clase antes, pueden ser difíciles de entender y hay una curva de aprendizaje empinada
- Imposible hacer cambios en tiempo de ejecución – tiene que volver a configurar el proyecto.
- Si las propiedades y las variables privadas tienen el mismo nombre, pueden producirse bucles infinitos que den lugar a errores
Inserción de un módulo de clase
Seleccione Insertar | Módulo de Clase en el menú VBE (Editor de Visual Basic). El nuevo Módulo de Clase se llamará automáticamente ‘Clase 1’, pero es necesario cambiarlo inmediatamente por el nombre que vaya a utilizar para su objeto

Usted cambia el nombre en la ventana de Propiedades donde la flecha está apuntando. Simplemente escriba su nuevo nombre, y éste cambiará en la colección de Módulos de Clase.
Si la ventana de Propiedades no es visible, seleccione Ver | Propiedades en el menú VBE o pulse F4.
Llame a su nuevo módulo de clase ‘MyItem’ y haga doble clic en el nombre en la vista de árbol en el Explorador de Proyectos para mostrar la ventana de código para él.
Comentarios
Publicar un comentario