Saltar al contenido

Diferencia entre Visual Basic 6.0 y VBA

Solución:

Para casi todos los propósitos de programación, VBA y VB 6.0 son lo mismo.

VBA no puede compilar su programa en un binario ejecutable. Siempre necesitará el host (un archivo de Word y MS Word, por ejemplo) para contener y ejecutar su proyecto. Tampoco podrá crear DLL COM con VBA.

Aparte de eso, hay una diferencia en el IDE: el IDE VB 6.0 es más poderoso en comparación. Por otro lado, tiene una estrecha integración de la aplicación host en VBA. Los objetos y eventos globales de la aplicación (como “ActiveDocument”) y los eventos están disponibles sin declaración, por lo que la programación específica de la aplicación es sencilla.

Aún así, nada le impide iniciar Word, cargar el IDE de VBA y resolver un problema que no tiene relación alguna con Word. No estoy seguro de si hay algo que VB 6.0 pueda hacer (técnicamente) y VBA no. Sin embargo, estoy buscando una hoja de comparación en MSDN.

VBA son las siglas de Visual Basic for Applications y también lo es el pequeño hermano de scripting “para aplicaciones” de VB. De hecho, VBA está disponible en Excel, pero también en las otras aplicaciones de oficina.

Con VB, se puede crear una aplicación de Windows independiente, lo que no es posible con VBA.

Sin embargo, los desarrolladores pueden “incrustar” VBA en sus propias aplicaciones, como un lenguaje de programación para automatizar esas aplicaciones.

Editar: De las preguntas frecuentes de VBA:

Q. ¿Qué es Visual Basic para aplicaciones?

UNA. Microsoft Visual Basic para Aplicaciones (VBA) es un entorno de programación integrable diseñado para permitir a los desarrolladores crear soluciones personalizadas utilizando todo el poder de Microsoft Visual Basic. Los desarrolladores que utilizan aplicaciones que alojan VBA pueden automatizar y ampliar la funcionalidad de la aplicación, acortando el ciclo de desarrollo de las soluciones empresariales personalizadas.

Tenga en cuenta que VB.NET es incluso otro idioma, que solo comparte sintaxis con VB.

Aquí hay una respuesta más técnica y completa a una vieja pregunta: Visual Basic para Aplicaciones (VBA) y Visual Basic (pre.NET) no son solo lenguajes similares, son los mismo idioma. Específicamente:

  • Ellos tienen lo mismo especificación: La descripción independiente de la implementación de lo que contiene el lenguaje y lo que significa. Puede leerlo aquí: [MS-VBAL]: Especificación de idioma VBA
  • Ellos tienen lo mismo plataforma: Ambos compilan en Microsoft P-Code, que a su vez es ejecutado exactamente por la misma máquina virtual, que se implementa en el dll msvbvm[x.0].dll.

En un antiguo libro de referencia de VB que encontré el año pasado, el autor (Paul Lomax) incluso afirmó que ‘VBA’ siempre ha sido el nombre del lenguaje en sí, ya sea que se use en aplicaciones independientes o en contextos integrados (como MS Office ):

“Antes de continuar, aclaremos un punto fundamental. Visual Basic para Aplicaciones (VBA) es el lenguaje utilizado para programar en Visual Basic (VB). VB en sí es un entorno de desarrollo; el elemento del lenguaje de ese entorno es VBA. “

Las pequeñas diferencias

Alojado frente a independiente: En términos prácticos, cuando la mayoría de la gente dice “VBA”, se refieren específicamente a “VBA cuando se usa en MS Office”, y dicen que “VB6” significa “VBA usado en la última versión del compilador VBA independiente (es decir, Visual Studio 6 ) “. El IDE y el compilador incluidos con MS Office son casi idénticos a Visual Studio 6, con la limitación de que no permite la compilación en archivos dll o exe independientes. Esto a su vez significa que las clases definidas en proyectos de VBA integrados no son accesibles desde consumidores COM no integrados, porque no pueden registrarse.

Desarrollo continuo: Microsoft dejó de producir un compilador de VBA independiente con Visual Studio 6, ya que cambiaron al tiempo de ejecución de .NET como la plataforma elegida. Sin embargo, el equipo de MS Office continúa manteniendo VBA, e incluso lanzó una nueva versión (VBA7) con una nueva VM (ahora llamada VBA7.dll) comenzando con MS Office 2010. La única diferencia importante es que VBA7 tiene un 32- y la versión de 64 bits y tiene algunas mejoras para manejar las diferencias entre los dos, específicamente con respecto a las invocaciones de API externas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *