Compartir a través de


Tipo no compatible con Visual Basic

No todos los tipos son compatibles en Visual Basic. Este error lo provoca la siguiente causa y tiene la siguiente solución:

  • Ha intentado usar un tipo en el programa que no tiene equivalente en Visual Basic para Aplicaciones. Por ejemplo, Visual Basic no tiene un puntero o un tipo de entero sin asignar, por lo que si intenta crear una variable de uno de estos tipos a partir de una biblioteca de objetos, se produce este error.

    En el ejemplo siguiente, aunque Rainbow puede ser una estructura válida, Visual Basic no puede crear una variable de ese tipo si contiene un tipo que Visual Basic no reconoce:

      Dim MyVar As Rainbow    ' Causes error. 
    

    Si el tipo es un tipo de parámetro válido para una función en una biblioteca de objetos, este error significa solo que no puede crear una variable de ese tipo en el código propio. Aunque no puede declarar siempre variables con un tipo de datos especificado en la documentación del objeto, hay normalmente un equivalente en Visual Basic.

    Por ejemplo, aunque Visual Basic no tenga un tipo de puntero, puede pasar un puntero a una función a una función API con el operador AddressOf. Compruebe también los subtipos del tipo Variant. A veces puede usarlos como equivalentes de tipos que no se ofrecen directamente en Visual Basic. Sin embargo, en algunos casos, Visual Basic simplemente no tiene equivalente. Por ejemplo, los punteros de datos no están disponibles.

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.