Capítulo 2 · 2.5
Macros de Word y Excel (VBA): ¿qué sigue funcionando?
Una macro es un pequeño programa dentro de un documento: un botón que crea una factura u ordena una lista. En Word y Excel, las macros están escritas en VBA. Este tipo de archivos se reconoce por la extensión docm, xlsm o pptm, o bien son archivos doc y xls antiguos.
La situación real
| LibreOffice | Euro-Office | |
|---|---|---|
| Abrir el archivo y usar los datos | Sí | Sí |
| Ejecutar macros VBA | En parte, sobre todo de Excel, si usted lo activa | No |
| Macros propias | En LibreOffice Basic y Python | En JavaScript |
En LibreOffice
¿Por qué no ocurre nada? Por motivos de seguridad, LibreOffice desactiva las macros de forma predeterminada. En ese caso verá un aviso como Las macros están desactivadas debido a la configuración de seguridad de macros.
- Elija Herramientas > Opciones... > Cargar/guardar > Propiedades de VBA. En Microsoft Excel (y, si es necesario, en Word), marque Cargar código Basic, Código ejecutable y Guardar código Basic original.
- Elija Herramientas > Opciones... > LibreOffice > Protección y haga clic en Seguridad de macros.... Elija Media: así LibreOffice le preguntará qué desea hacer con cada archivo que contenga macros.
- Cierre el archivo y vuelva a abrirlo. Elija Activar macros (Enable Macros), pero solo si confía en el archivo.
LibreOffice puede ejecutar gran parte del código VBA, pero no todo. Si un botón no funciona, será necesario adaptar la macro en el editor de Basic (Herramientas > Macros > Editar macros...). Para ello se requieren conocimientos de programación.
Si vuelve a guardar el archivo como xlsm, el código VBA original se conserva gracias a Guardar código Basic original. Si lo guarda como ods, el código VBA se pierde.
En Euro-Office
Euro-Office no ejecuta VBA. El archivo se abre con normalidad y usted ve todos los datos y fórmulas, pero los botones no hacen nada. En la pestaña Vista, en Macros, puede crear una macro en JavaScript o grabar una. Más información en Un archivo de Excel con macros VBA: ¿y ahora qué?.

¿Sigue necesitando la macro?
Muchas macros antiguas ordenan, filtran, colorean o buscan algo. A menudo eso se puede hacer sin macros:
- colorear: formato condicional (Formato condicional: colorear celdas automáticamente);
- buscar: BUSCARV o BUSCARX (Búsqueda vertical con BUSCARV y BUSCARX);
- resumir: una tabla dinámica (Crear una tabla dinámica);
- cartas a partir de una lista: combinación de correspondencia (Crear cartas a partir de una lista de direcciones (combinación de correspondencia)).
Encontrará más información sobre las opciones de que dispone en Macros, plantillas y pruebas de compatibilidad.
Atención: las macros de archivos de otras personas pueden ser dañinas. No ponga nunca la seguridad de macros en Baja y active las macros solo en archivos en los que confíe. Conserve siempre el original de un archivo con macros.
