Mac Office soporta VBA. Lo ha hecho desde que VBA se introdujo con Excel 5 en 1994. Hubo una versión (Office 2008) que no tenía VBA, pero está obsoleta desde hace años.
El iPhone utiliza el sistema operativo iOS. Microsoft dice que no extenderá el soporte de VBA a ninguna plataforma que no lo tenga actualmente. Así que el iPhone no puede usar código VBA.
Microsoft sí soporta macros Office-js en todas las plataformas de Office (Windows, Mac, iOS, Online y Android). El lenguaje está basado en JavaScript, y ha sido ampliado con objetos, métodos y propiedades adecuadas para cada una de las apps de Office.
No existe un conversor/traductor de código VBA a Office-js. Tampoco existe un grabador de macros para el código de Office-js. De hecho, el modelo de objetos para Office-js es todavía un trabajo en progreso. La mayoría de las características están ahí en Excel, y Microsoft está trabajando en las otras aplicaciones de Office.
Espero que estés muy motivado para reescribir tu código VBA en Office-js. Hay muy poca gente escribiendo código Office-js, y el soporte técnico está disponible sólo en Stack Overflow (usando la etiqueta Office-js). Este sitio es notoriamente poco amigable con los novatos-así que asegúrate de buscar en su base de datos de preguntas previamente respondidas antes de atreverte a hacer una nueva pregunta.
El código de Office-js vive en un servidor. No lo almacena con su libro de trabajo o documento. Necesitas Visual Studio para escribir el código. Espero que estés en muy buenos términos con tu Departamento de TI, porque podrían fácilmente poner el kibosh en tus esfuerzos para comenzar a construir código en Office-js.
El código de Office-js no es ni de lejos tan legible como el código VBA. No esperes que tus compañeros no programadores o tu jefe sean capaces de entender lo que estás haciendo.
El código de Office-js distingue entre mayúsculas y minúsculas, así que espero que no seas propenso a cometer errores tipográficos. También es asimétrico, por lo que debes probar si un paso anterior está completo antes de embarcarte en el siguiente.
En definitiva, la iniciativa Office-js parece ser una solución en busca de un problema. A pesar de impulsar la iniciativa desde 2012, muy poca gente la utiliza. Para el resto de nosotros, VBA sigue vivo, y seguirá recibiendo soporte hasta después de su jubilación.