Després de tenir l'habilitat en l'idioma VBA, podeu escriure noves macros des de zero a l'Editor Visual Basic en lloc d'editar-ne les que hàgiu enregistrat anteriorment al vostre full de càlcul mitjançant la gravadora de macros d'Excel. Quan creeu una macro des de zero a l'Editor de Visual Basic, heu de seguir aquests passos generals:
Feu clic al nom del projecte VBA a la finestra de l'Explorador de projectes on voleu afegir la nova macro.
Si voleu escriure una macro només per al llibre de treball actual, feu clic a la funció VBAProject que conté el seu nom de fitxer entre parèntesis, com a VBAProject (El meu full de càlcul). Si voleu escriure una macro global al llibre de treball de macros personals, feu clic a VBAProject(PERSONAL.XLSB) a la finestra de l'Explorador de projectes.
Trieu Insereix → Mòdul a la barra de menús de l'Editor Visual Basic.
Excel respon obrint una nova finestra de codi en blanc a la finestra de l'Editor de Visual Basic i afegint una altra icona de mòdul (anomenada amb el següent número disponible) a l'esquema de la finestra Explorador de projectes sota el projecte VBA adequat.
A continuació, comenceu la vostra macro creant una subrutina (totes les macros, fins i tot les que enregistreu al full de càlcul, són realment subrutines de Visual Basic). Per fer-ho, només heu d'escriure sub (per a subrutina).
Escriviu sub i premeu la barra espaiadora.
Ara, heu de posar un nom a la vostra nova macro, cosa que feu anomenant la vostra subrutina. Recordeu que en anomenar la vostra macro nova (o una subrutina), seguiu les mateixes regles que quan anomeneu un nom d'interval (comenceu amb una lletra i sense espais).
Escriviu el nom de la vostra macro i premeu la tecla Intro.
Tan bon punt premeu la tecla Intro, l'Editor de Visual Basic insereix un parell de parèntesis tancats després del nom de la macro, una línia en blanc i una instrucció End Sub a la seva pròpia línia a sota. A continuació, col·loca el punt d'inserció al principi de la línia en blanc entre les línies amb les sentències Sub i End Sub. És aquí on introduïu les línies de codi de la macro que esteu escrivint.
Introduïu les línies de codi VBA per a la macro entre les declaracions Sub i End Sub.
Abans de començar a escriure les declaracions de VBA que ha d'executar la vostra macro, primer hauríeu de documentar el propòsit i el funcionament d'aquesta macro. Per fer-ho, escriviu un apòstrof ( ' ) al començament de cada línia d'aquest text per introduir-lo com a comentari. (Excel sap no intentar executar cap línia de codi que estigui precedida amb un apòstrof).
Quan premeu la tecla Intro per iniciar una nova línia que comença amb un apòstrof, la línia de text es torna verda, indicant que l'Editor de Visual Basic considera que és un comentari que no s'ha d'executar quan s'executa la macro.
Després de documentar el propòsit de la macro amb els vostres comentaris, comenceu a introduir les declaracions que voleu que executi la macro (que no han d'anar precedides per apòstrofs). Per sagnar les línies de codi per facilitar-les la lectura, premeu Tabulador. Si necessiteu sobrepassar la línia, premeu Maj+Tab. Quan acabeu d'escriure el codi de la vostra macro, haureu de desar-lo abans de provar-lo.
Trieu Fitxer → Desa a la barra de menús de l'Editor Visual Basic o premeu Ctrl+S.
Després de desar la nova macro, podeu fer clic al botó Visualitza Microsoft Excel a la barra d'eines Estàndard per tornar al vostre full de treball on podeu provar-ho. Per executar la nova macro que heu escrit, trieu Visualització → Macros a la cinta o premeu Alt+F8 per obrir el quadre de diàleg Macro i, a continuació, feu clic al nom de la macro que acabeu d'escriure abans de fer clic a D'acord.
Si l'Excel troba un error en executar la macro, us retorna a l'Editor de Visual Basic i apareix un quadre de diàleg d'alerta de Microsoft Visual Basic, que indica (en forma molt críptica) la naturalesa de l'error. Feu clic al botó Depuració d'aquest quadre de diàleg perquè l'Editor de Visual Basic ressalti la línia de codi que no pot executar.
A continuació, podeu intentar trobar l'error i editar-lo a la línia de codi. Si elimineu la causa de l'error, l'Editor de Visual Basic elimina el ressaltat d'aquesta línia de codi i, a continuació, podeu fer clic al botó Continua (que substitueix automàticament el botó Executar quan l'Editor entra en mode de depuració) amb el triangle blau. apuntant cap a la dreta a la barra d'eines Estàndard per continuar executant la macro.