2009-01-13 16 views
8

La empresa en la que trabajo se ejecuta en hojas de Excel. Varias de esas hojas tienen alguna forma de código VBA incrustado. Les estoy haciendo algo de mantenimiento, pero se siente realmente anticuado.¿Qué pasará con Office VBA?

¿Qué le va a pasar a Office VBA?

¿Por qué Microsoft no ha lanzado un lenguaje de macro .NET incrustado para Office?

+3

"una empresa que se ejecuta en hojas de Excel" ... déjame adivinar, ¿estás trabajando en un banco? Siempre me sorprende, como contratista, ver giga-bancos de nivel mundial corriendo en hojas xl. –

Respuesta

9

Respuesta corta: es probable que estés bien durante un tiempo todavía.

Respuesta larga: VB6 (que es lo que VBA realmente es) es casi un lenguaje muerto, incompatible, actualizado por última vez hace una década con un IDE del mismo período. Solo está presente porque está integrado en Office y hay millones de aplicaciones de Office que dejarían de funcionar si se eliminara o cambiara VBA. Sin mencionar a millones de usuarios muy molestos.

Entonces, ¿cómo avanzar? ¿Se puede volver a implementar Office en el código administrado? ¿Microsoft quiere hacer eso en absoluto? ¿Van a hacer una ruptura de compatibilidad hacia atrás aún mayor que la cinta de opciones y simplemente descartar la noción de grabación de macro e interpretar el código incrustado? Simplemente no puedo ver a mis usuarios llevándose a VB.NET en Visual Studio, usando COM Interop y otras cosas.

Si tuviera que poner dinero en un resultado (y no me gustaría apostar mucho incluso entonces) estaría mirando el Dynamic Language Runtime y el hecho de que varios idiomas están en varios estados de preparación para ejecutarlo . Supongamos que el DLR, con algún reemplazo adecuado o envoltorio para el modelo COM de la aplicación Office, reemplazara el tiempo de ejecución de VB6. Además, supongamos que VBA se implementó como un lenguaje DLR. Ahora VBA heredado continuará ejecutándose, solo en un intérprete diferente (moderno, compatible) y en la negociación, podemos programar macros de Excel en Python, Ruby o cualquier otro lenguaje DLR que nos apetezca.

Pero esa es solo mi mejor suposición: no tengo ni idea de si realmente va a suceder algo así o no. Sin embargo, me encantaría poder programar macros de Excel en Ruby.

+0

Será compatible 'tal cual' durante 5 años después del lanzamiento de Windows 7 más 5 años después de eso. –

+0

Y está siendo reintroducido en Office para Mac en el próximo lanzamiento ... – guillermooo

1

Ayer encontré la misma línea de pensamiento. Qué casualidad. De repente, el jefe de mi trabajo a tiempo parcial buscaba una aplicación de Excel que creé hace 3 años (abandoné la empresa en 2007 y volví a trabajar como empleado a tiempo parcial para aumentar mi trabajo a tiempo completo). Recuerdo que lo había convertido a una aplicación MS Access 2003; pero la aplicación debe actualizarse para cumplir con los requisitos más nuevos. Adivina qué, creo que ya me olvidé de VBA. No es el momento adecuado para volver y volver a aprender cosas desde cero. Estoy avanzando con C# 2.0/3.0. ¡Reconstruir esa aplicación MS Access 2003 con C# 3.0 será una gran experiencia de aprendizaje, estoy seguro!

@IainMH es correcto ... "es el momento para que usted pueda sumergirse en .NET"

2

Bueno, soy un experimentado programador .NET. Intenté usar Tools for Office, que es muy complicado de usar y requiere distribuir ensamblajes (LOL). No hay forma de que Finance or Delivery lo use. Nos reímos bien antes de ir a la desinstalación.

Probamos Google Docs, que fue sorprendentemente flexible, pero aún no tan poderoso como el de las macros de Excel. Microsoft se ha estancado desde 2000, y Google se está moviendo rápidamente, por lo que en unos pocos años las respuestas podrían ser diferentes. VBA en sí es en realidad menos potente hoy debido a todas las tonterías de seguridad.

Al final todavía tengo un botón en su hoja para hacer lo que quieren, y pueden hacer cambios menores en el código si así lo desean. Es extraño que VBA sea el camino a seguir para algo que sospecho que usan todos los departamentos de finanzas del mundo.

+0

Generalmente, de acuerdo con los comentarios centrados en su negocio (esa es la forma en que los usuarios de negocios piensan), excepto por el comentario sobre seguridad que lo hace menos poderoso. En serio, si está en el área de finanzas y no se toma en serio la seguridad, entonces debe replantearse su enfoque para el desarrollo de soluciones. Las advertencias de seguridad seguras son un problema, pero también lo son los usuarios que no toman en serio la seguridad de una organización. No creo que sea extraño no desarrolladores como VBA, son pobres en el tiempo y quieren algo con lo que puedan trabajar lo antes posible. –

Cuestiones relacionadas