Compartir a través de


No se admiten constantes, cadenas de longitud fija, matrices, tipos definidos por el usuario ni instrucciones Declare como miembros públicos de un módulo de objetos

No todas las variables de un módulo de objeto se pueden declarar como Public. No obstante, los procedimientos son Public de forma predeterminada y los procedimientos Property se pueden usar para simular variables sintácticamente. Este error tiene las siguientes causas y soluciones:

  • Declaró una constantePublic en un módulo de objeto.

    A pesar de que no puede declarar una constante Public en un módulo de objeto, sí puede crear un procedimiento Property Get con el mismo nombre. Si no crea un procedimiento Property Let o Property Set con ese nombre, está creando en efecto una propiedad de solo lectura que se puede usar del mismo modo que una constante.

  • Declaró una cadena Public de longitud fija en un módulo de objeto. Puede simular cadenas de longitud fija con un conjunto de procedimientos Property que, o bien truncan los datos de cadena cuando superan la longitud permitida o bien notifican al usuario que se ha superado la longitud.

  • Declaró una matrizPublic en un módulo de objeto.

    Aunque un procedimiento no puede devolver una matriz, sí puede devolver un tipo Variant que contenga una matriz. Para simular una matriz Public en un módulo de clase, use un conjunto de procedimientos Property que acepten y devuelvan un tipo Variant que contenga una matriz.

  • Colocó una instrucción Declare en un módulo de objeto. Las instrucciones Declare son implícitamente públicas. Preceda la instrucción Declare con la palabra clavePrivate.

Para más información, seleccione el elemento en cuestión y presione F1 (en Windows) o AYUDA (en Macintosh).

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.