Macros
Les macros
Com crear una macro
Per crear una macro hem de tenir activada la pestanya Programador (o Desarrolador). Si no està visible a la cinta d'opcions cal anar al Menú principal d'Excel, Archivo, Opciones, Personalizar cinta de opciones, i activar la pestanya Programador (Desarrollador) al requadre de Fichas principales.
Al seleccionar ara la pestanya Programador a la cita d'opcions veurem el menú Visual Basic des d'on entrarem en el mode edició de les macros on podrem escriure-les tant a l'apartat de Módulos com a les Hojas. Si no és una macro que estrictament actui sobre una fulla el millor es escriure-la a l'apartat de Módulos.
Les macros s'identifiquen per un nom que segueix a l'expressió Sub o Private Sub. La diferència és que si posem només Sub la macro queda accessible als usuaris. En canvi Private Sub la torna invisible i només es pot cridar des dels llocs previstos sense accés directe per part de l'usuari.
Les línies de comentaris s'escriuen començant per un apòstrof.
El final d'una macro serà sempre el comando End Sub
La manera més fàcil de crear una macro és gravar-la. L'inconvenient és que que aquest procediment moltes vegades deixa moltes línies innecessàries i no sempre els comandos emprats son els més eficients, però és una bona manera de començar a familiaritzar-se amb l'escriptura de les macros.
Als enllaços següents es mostra com activar la pestanya Programador, com gravar o editar una macro, com executar-la i com assignar-la a un botó
A EXCEL TOTAL podeu ampliar informació.
Macro per actualitzar la Taula Dinàmica
Aquesta macro s'anomena Actualizar i esta escrita al Módulo 1.
Aquesta macro equival al que faríem manualment amb l'opció del Menú de Tabla Dinàmica, Actualizar, però prèviament es tornen a carregar les dades de la TD per si s'han de modificar les dades com és el cas si s'hagués canviat el mes a consultar a la fulla PyG.
Macro per fer el tancament de mes
Aquesta macro s'anomena CierreMes i esta també al Módulo 1.
Controla que el mes que anem a tancar sigui correcte. Si és un mes ja tancat anteriorment demana confirmació per recarregar les dades. Si és un mes que no correspon al mes següent a l'últim mes tancat ens avisa de l'error i tanca el procés de tancament.
Si el mes a tancar és correcte primer borra les dades que pugui haver ja carregades anteriorment del mateix mes i tot seguit consolida les dades del mes a tancar amb les dels mesos anteriors a la fulla CierreMes i després les traspassa a la fulla AñoAct, borrant-les de CierreMes.
La macro CierreMes s'activa des del botó que hi ha a la fulla CierreMes que té assignada aquesta macro a la pròpia fulla.
Macro que s'executa a l'obrir una fulla
Quan anem a visualitzar la fulla Ratios necessitem que la Taula Dinàmica de la fulla PyG estigui totalment replegada, doncs els valors de la fulla Ratios s'agafen de les posicions fixes que ocupen a la Taula Dinàmica quan està replegada.
Aquesta macro s'ha de col·locar dins de la fulla on s'ha d'executar i no dels mòduls.
La trobarem a la fulla Ratios i ha de portar el nom específic Worksheet_Activate que es col·loca automàticament quan fem aquesta selecció a les pestanyes superiors de la macro.
La macro simplement replega la Taula Dinàmica.
Macro que s'executa al canviar una cel·la
Podem fer que una macro s'activi quan el valor d'una cel·la canvia. Aquesta macro cal col·locar-la a la fulla i no a mòduls.
Aquesta macro porta un nom específic que apareix quan a la línia superior seleccionem Worksheet - Change cosa que escriurà com a nom de la macro Worksheet_Change(By Val Target as Range)
Quan canviem el mes a consultar a la fulla PyG (cel·la A3) s'activa la macro Actualizar del Módulo 1.
Aquí comentarem les macros utilitzades. El contingut és el següent:
- Com crear una macro i assignar-la a un botó o dibuix
- Macro per actualitzar la taula dinàmica
- Macro per fer el tancament de mes
- Macro que s'executa a l'obrir una fulla
- Macro que s'executa al canviar una cel·la
- Macro per ampliar o reduir el tamany d'un gràfic
- Macro per canviar el signe del gràfic
Com crear una macro
Per crear una macro hem de tenir activada la pestanya Programador (o Desarrolador). Si no està visible a la cinta d'opcions cal anar al Menú principal d'Excel, Archivo, Opciones, Personalizar cinta de opciones, i activar la pestanya Programador (Desarrollador) al requadre de Fichas principales.
Al seleccionar ara la pestanya Programador a la cita d'opcions veurem el menú Visual Basic des d'on entrarem en el mode edició de les macros on podrem escriure-les tant a l'apartat de Módulos com a les Hojas. Si no és una macro que estrictament actui sobre una fulla el millor es escriure-la a l'apartat de Módulos.
Les macros s'identifiquen per un nom que segueix a l'expressió Sub o Private Sub. La diferència és que si posem només Sub la macro queda accessible als usuaris. En canvi Private Sub la torna invisible i només es pot cridar des dels llocs previstos sense accés directe per part de l'usuari.
Les línies de comentaris s'escriuen començant per un apòstrof.
El final d'una macro serà sempre el comando End Sub
La manera més fàcil de crear una macro és gravar-la. L'inconvenient és que que aquest procediment moltes vegades deixa moltes línies innecessàries i no sempre els comandos emprats son els més eficients, però és una bona manera de començar a familiaritzar-se amb l'escriptura de les macros.
Als enllaços següents es mostra com activar la pestanya Programador, com gravar o editar una macro, com executar-la i com assignar-la a un botó
Macro per actualitzar la Taula Dinàmica
Aquesta macro s'anomena Actualizar i esta escrita al Módulo 1.
Aquesta macro equival al que faríem manualment amb l'opció del Menú de Tabla Dinàmica, Actualizar, però prèviament es tornen a carregar les dades de la TD per si s'han de modificar les dades com és el cas si s'hagués canviat el mes a consultar a la fulla PyG.
Macro per fer el tancament de mes
Aquesta macro s'anomena CierreMes i esta també al Módulo 1.
Controla que el mes que anem a tancar sigui correcte. Si és un mes ja tancat anteriorment demana confirmació per recarregar les dades. Si és un mes que no correspon al mes següent a l'últim mes tancat ens avisa de l'error i tanca el procés de tancament.
Si el mes a tancar és correcte primer borra les dades que pugui haver ja carregades anteriorment del mateix mes i tot seguit consolida les dades del mes a tancar amb les dels mesos anteriors a la fulla CierreMes i després les traspassa a la fulla AñoAct, borrant-les de CierreMes.
La macro CierreMes s'activa des del botó que hi ha a la fulla CierreMes que té assignada aquesta macro a la pròpia fulla.
Macro que s'executa a l'obrir una fulla
Quan anem a visualitzar la fulla Ratios necessitem que la Taula Dinàmica de la fulla PyG estigui totalment replegada, doncs els valors de la fulla Ratios s'agafen de les posicions fixes que ocupen a la Taula Dinàmica quan està replegada.
Aquesta macro s'ha de col·locar dins de la fulla on s'ha d'executar i no dels mòduls.
La trobarem a la fulla Ratios i ha de portar el nom específic Worksheet_Activate que es col·loca automàticament quan fem aquesta selecció a les pestanyes superiors de la macro.
La macro simplement replega la Taula Dinàmica.
Macro que s'executa al canviar una cel·la
Podem fer que una macro s'activi quan el valor d'una cel·la canvia. Aquesta macro cal col·locar-la a la fulla i no a mòduls.
Aquesta macro porta un nom específic que apareix quan a la línia superior seleccionem Worksheet - Change cosa que escriurà com a nom de la macro Worksheet_Change(By Val Target as Range)
Quan canviem el mes a consultar a la fulla PyG (cel·la A3) s'activa la macro Actualizar del Módulo 1.
D'aquesta manera els valors de la fulla PyG queden automàticament actualitzats.
Macro que amplia/redueix el tamany del gràfic de la fulla Ratios
Aquesta macro s'anomena TamañoGrf i es troba al Módulo 2.
Al polsar sobre el botó Tamaño de la fulla Ratios, fa que el gràfic s'ampliï per veure millor l'evolució o que retorni al seu tamany original.
Macro que canvia el signe del valors del gràfic de la fulla
Aquesta macro s'anomena SignoGrf i es troba al Módulo 2.
Té per objectiu que polsant sobre el botó Ing/Gtos de la fulla Ratios el signe dels valors del compte seleccionat per veure'n l'evolució canviï. D'aquesta manera saldos de comptes que de natural ens vindran amb signe negatiu (signe haver) els puguem veure al gràfic de forma positiva.
Per ampliar formació sobre Macros us deixo un enllaç a EXCEL TOTAL
Macro que amplia/redueix el tamany del gràfic de la fulla Ratios
Aquesta macro s'anomena TamañoGrf i es troba al Módulo 2.
Al polsar sobre el botó Tamaño de la fulla Ratios, fa que el gràfic s'ampliï per veure millor l'evolució o que retorni al seu tamany original.
Macro que canvia el signe del valors del gràfic de la fulla
Aquesta macro s'anomena SignoGrf i es troba al Módulo 2.
Té per objectiu que polsant sobre el botó Ing/Gtos de la fulla Ratios el signe dels valors del compte seleccionat per veure'n l'evolució canviï. D'aquesta manera saldos de comptes que de natural ens vindran amb signe negatiu (signe haver) els puguem veure al gràfic de forma positiva.
Per ampliar formació sobre Macros us deixo un enllaç a EXCEL TOTAL