Cómo convertir macros de Excel (VBA) a OpenOffice/LibreOffice (CalcBasic)

Las macros en VBA (Visual Basic for Applications) dan gran potencia a Excel (interactividad, cálculos en tiempo real). Muchos quieren compatibilidad cruzada con OpenOffice/LibreOffice Calc, pero Calc no soporta VBA nativamente. Al convertir archivos .xls/.xlsx con macros a .ods, se requiere trabajo extra. Hay herramientas para agilizarlo.

Paso 1: Convertir código VBA a CalcBasic con utilidad online

Busca utilidad que convierta VBA a CalcBasic (lenguaje de macros de Calc). Opción gratuita: conversor online de Business Spreadsheets (ver Referencias). Pegas código VBA en cuadro de texto y lo convierte automáticamente a CalcBasic. Ninguna conversión automática es perfecta; sirve de base para los ajustes manuales inevitables para funcionalidad completa en Calc. Útil para programadores que quieren arrancar rápido la conversión.

Paso 2: Paquete de compatibilidad VBA para OpenOffice

Instala paquete de compatibilidad VBA en OpenOffice. Permite ejecutar código VBA sin conversión. No ideal para distribuir a audiencia amplia (cada usuario debe instalarlo). Dos vías:
• Go-oo: extiende OpenOffice a varios formatos, integra muchas apps.
• Reconfiguración completa del paquete de instalación en red: Novell creó versión de OpenOffice con soporte VBA nativo, pero instalación es compleja. Integra actualizaciones Go-oo desde la base. Mejor para entornos de red donde muchos necesitan esta función.

Paso 3: Usar versión de OpenOffice con VBA integrado

Desde 2006 hay al menos 10 versiones de OpenOffice con compatibilidad VBA integrada. Elimina necesidad de conversión robusta, pero no sirve para distribuir a público amplio. OpenOffice nativo no reconoce VBA; esta opción solo vale para programadores que migran para sí mismos o base de usuarios controlada.