¿De qué manera es Excel VBA útil para los científicos y analistas de datos?

Es posible que desee aprender VBA si trabaja en un entorno donde los archivos de Excel desempeñan un papel importante en el flujo de trabajo y, en particular, donde la salida de su propio trabajo tiene que ser un archivo de Excel en sí mismo.

Por supuesto, puede administrar la lectura y escritura de archivos xlsx muy bien con python, por ejemplo, usando xlswriter o pandas. Pero si necesita crear una plantilla de Excel que se comporte como una aplicación, haciendo uso de macros, es posible que trabajar con Excel directamente sea mucho más fácil.

Además, no me gusta mucho sobresalirme, pero en realidad es útil siempre que no trates con archivos grandes (puedes comprobar qué tan grande es demasiado grande para Excel). A veces, aprender algunos trucos de VBA puede ayudarlo a evitar abrir el archivo con una herramienta diferente. Nuevamente, esto es siempre que necesite lidiar con este tipo de archivos en su trabajo. Nunca elegiría activamente usar Excel sobre Python o R en un proyecto a menos que haya una razón convincente para hacerlo.

Personalmente, solo tuve que usarlo una vez, cuando estaba trabajando en un proyecto que involucraba un gran almacén de conjuntos de datos completamente en xlsx, y el equipo quería que esto permaneciera como estaba. El conjunto de datos se modificaba continuamente, por lo que exportar todo una vez no era una opción. No conocía VBA de antemano, pero fue muy fácil escribir un script para reorganizar los datos y realizar algunos cálculos, todo dentro de Excel, para que el equipo pudiera hacer el proceso simplemente haciendo clic en un botón dentro de la hoja.

Teniendo esto en cuenta, si ya conoce la programación, es posible que no necesite aprender VBA hasta que la situación realmente lo requiera. Al final, VBA es solo una herramienta, ya que hay muchas otras.

Los trucos de VBA pueden convertir a un joven en un genio con simples trucos de VBA sobre poder vincular

  1. Cualquier macro que se vincule con Outlook (revise Ron de bruin en Google, ya ha hecho scripts de VBA para esto)
  2. O deje que una macro se ejecute a través de un script .vbs que colocará en un programador para que se ejecute automáticamente. Al igual que en los scripts vbs, llama a algunas macros. En el programador, usted menciona a qué hora se debe ejecutar el script .vbs. Este es el núcleo de la automatización. Aprenderlo. Dominarlo Incluso pruébalo en el planificador de Windows
  3. Macros vinculadas a la base de datos SQL

Estas habilidades básicas te convierten en un genio, desde una perspectiva junior.

Desde una perspectiva superior, piense en grande. Supongamos que tiene un VaR calculado a partir de 2 negocios. Digamos que esas 2 empresas tienen 100 franquicias cada una y 500 mesas de negociación. En cada escritorio tiene productos X, Y, Z. Digamos que 1 negocio se mueve 5% día tras día y tiene curiosidad por saber qué impulsó este movimiento. Qué escritorios y qué productos. Esto se puede calcular fácilmente a través de VBA. Armar un proyecto de este tipo lleva alrededor de 1 semana completa. Trabajo duro, pero hace lo mismo que una pieza de software de TI.

No tiene sentido compartir el código, ya que son miles de líneas, pero esto es de lo que VBA es capaz. ¿Qué tan importante es esto? Suficiente para que se envíe a un regulador, por ejemplo, como el PRA en el Reino Unido, dado que solicitan resultados de prueba de los productos aprobados por IMA (esto se relaciona con pérdidas de pérdidas y ganancias mayores que VaR que requieren comentarios; cuando VaR se mueve de manera irregular, requiere un comentario) .

¿Por qué VBA y no algo elegante? Porque VBA es fácil y puede ser recogido por novatos que no saben programar. Cada banco grande tiene cumplimiento interno que prueba los períodos de excepción en los que las herramientas automáticas de terceros no funcionan y usted confía en soluciones internas como simplemente el código VBA.

Excel VBA es muy útil. Excel es una de las herramientas más utilizadas en una amplia variedad de empresas.

Excel por sí solo es muy flexible y poderoso, sin embargo, hay algunas funciones más complejas que usar la fórmula en las celdas no es lo suficientemente bueno.

En estos casos, puede programar la mayoría de las cosas que necesita para calcular, simular o trabajar en VBA.

Si necesita usar un algoritmo complejo, es probable que alguien ya haya tomado ese algoritmo complejo y haya creado una API o complemento o biblioteca a la que pueda acceder a través de VBA.

Si necesita hacer esto con muchos datos, lo más probable es que necesite manipularlo y extraerlo de una base de datos, antes de sus próximos pasos, puede programarlo en VBA.

Si necesita repetir o automatizar cualquiera de estas cosas, VBA también es su movimiento para ir.

Algunas de estas cosas pueden ser más fáciles de hacer en R, Matlab o SQL, sin embargo, no siempre tiene acceso a ellas.

En resumen, hace que su herramienta más comúnmente disponible sea mucho más potente y flexible.