Si passareu temps treballant amb macros a Visual Basic Editor, per què no aprofitar algunes de les eines integrades que us facilitaran la feina? Aquests consells milloraran molt la vostra experiència de programació de macros.
Aplicació de comentaris de bloc
Col·locar un únic apòstrof davant de qualsevol línia de codi indica a Excel que omet aquesta línia de codi. Aquesta tècnica s'anomena comentari de codi. La majoria dels programadors utilitzen l'apòstrof únic per crear comentaris o notes al codi, tal com es mostra aquí.
Un sol apòstrof davant de qualsevol línia converteix aquesta línia en un comentari.
De vegades és beneficiós comentar diverses línies de codi. D'aquesta manera, podeu provar determinades línies de codi mentre dieu a Excel que ignori les línies comentades.
En lloc de passar temps comentant una línia a la vegada, podeu utilitzar la barra d'eines Edita per comentar un bloc sencer de codi.
Per activar la barra d'eines Edita, aneu al menú VBE i trieu Visualització → Barres d'eines → Edita. Seleccioneu les línies de codi que voleu comentar i feu clic a la icona Bloc de comentaris a la barra d'eines Edita, tal com es mostra aquí.
Utilitzeu la barra d'eines Edita per aplicar comentaris a un bloc de codi.
Còpia de diverses línies de codi
Podeu copiar blocs sencers de codi ressaltant les línies que necessiteu i, a continuació, mantenint premuda la tecla Ctrl mentre arrossegueu el bloc. Aquest vell truc de Windows funciona fins i tot quan arrossegueu per mòduls.
Sabreu que esteu arrossegant una còpia quan el cursor mostri un símbol més al costat, com es mostra aquí.
Ctrl + arrossegueu per crear una còpia.
Salt entre mòduls i procediments
Després que la memòria cau de codi macro comenci a créixer, pot ser un dolor moure's ràpidament entre mòduls i procediments. Podeu alleujar el dolor utilitzant unes quantes tecles d'accés ràpid.
Teletransportació a les vostres funcions
Quan reviseu una macro, podeu trobar una variable o un nom de funció que, òbviament, apunta a una altra part de codi. En lloc de recórrer tots els mòduls per trobar d'on prové el nom de la funció o de la variable, simplement podeu col·locar el cursor sobre el nom de la funció o variable i prémer Maj+F2.
Com il·lustra aquesta figura, se us teletransporta instantàniament a l'origen d'aquesta funció o nom de variable. Si premeu Ctrl+Maj+F2, us tornarà a on vau començar.
Premeu Maj+F2 al nom d'una funció o variable que s'hi adreça.
Mantenir-se en el procediment correcte
Quan els vostres mòduls contenen diversos procediments, pot ser difícil desplaçar-vos per un procediment concret sense desplaçar-vos inadvertidament a un altre procediment. Sovint us trobareu desplaçant-vos cap amunt i després cap avall, intentant tornar a la part de codi correcta.
Per evitar aquesta tonteria, feu clic al botó Visualització del procediment a la cantonada inferior esquerra de VBE, tal com es mostra aquí. En fer-ho, es limita el desplaçament només al procediment en què us trobeu.
Limiteu el desplaçament al procediment actiu.
Passant pel teu codi
Per passar pel codi, heu de posar la macro en mode de depuració. Simplement col·loqueu el cursor a qualsevol lloc de la macro i premeu la tecla F8.
En programació, el terme depuració significa trobar i corregir possibles errors en el codi. Una de les eines de depuració més útils és la capacitat de passar pel codi una línia a la vegada. Quan passeu pel codi, esteu veient com s'executa cada línia.
La primera línia de codi es ressalta i apareix una petita fletxa al marge esquerre de la finestra de codi, tal com es mostra aquí. Premeu F8 de nou per executar la línia de codi ressaltada i passar a la línia següent. Continueu prement F8 per veure que cada línia s'executa fins al final de la macro.
Premeu F8 per passar per cada línia de la macro.
Per sortir del mode de depuració, aneu al menú VBE i seleccioneu Depuració → Sortir.
Passant a una línia de codi específica
Què passa si voleu començar a passar pel codi en una línia específica? Bé, només ho podeu fer movent la fletxa!
Quan es ressalta una línia de codi en mode de depuració, podeu fer clic i arrossegar la fletxa del marge esquerre de la finestra del codi cap amunt o cap avall, deixant-la anar a la línia de codi que vulgueu executar a continuació, tal com es mostra aquí.
Arrossegueu la fletxa mentre passeu pel codi.
Atura del codi en un punt predefinit
Quan establiu un punt d'interrupció, el vostre codi s'executarà amb normalitat i després s'aturarà a la línia de codi on heu definit com a punt d'interrupció.
Aquesta tècnica de depuració és útil quan voleu executar proves petits blocs de codi alhora. Per exemple, si sospiteu que hi pot haver un error a la vostra macro, però sabeu que la majoria de la macro s'executa sense cap problema, podeu establir un punt d'interrupció començant a la línia de codi sospitosa i després executar la macro. Quan la macro arriba al vostre punt d'interrupció, l'execució s'atura. En aquest punt, podeu prémer la tecla F8 del teclat per veure com la macro s'executa una línia a la vegada.
Per establir un punt d'interrupció al codi, col·loqueu el cursor on voleu que comenci el punt d'interrupció i, a continuació, premeu la tecla F9 del teclat. VBA marcarà clarament el punt d'interrupció amb un punt al marge esquerre de la finestra de codi, i la línia de codi en si es veurà ombrejada de color granat.
Un punt d'interrupció està marcat amb un punt i un text ombrejat.
Quan la vostra macro arriba a un punt d'interrupció, es col·locarà efectivament en mode de depuració. Per sortir del mode de depuració, podeu pujar al menú VBE i seleccionar Depurar → Sortir.
Veure els valors de les variables inicials i finals
Si passeu el cursor per sobre d'una variable de cadena o enter a VBA mentre esteu en mode de depuració, podeu veure el valor d'aquesta variable en una informació sobre eines. Aquesta característica us permet veure els valors que s'estan passant dins i fora de les variables, la qual cosa és útil a l'hora de depurar codi.
Tanmateix, els consells sobre eines només poden contenir 77 caràcters (inclòs el nom de la variable), de manera que si el valor de la variable és massa llarg, es talla. Per veure més enllà dels primers 77 caràcters, només cal que manteniu premuda la tecla Ctrl mentre passeu el cursor.
Aquí teniu l'aspecte de la informació sobre eines quan passeu el cursor per sobre d'una variable en mode de depuració.
Els caràcters inicials i finals d'una informació sobre eines variable.
S'està desactivant la comprovació automàtica de sintaxi
Sovint, mentre treballeu en algun codi, trobareu que necessiteu anar a una altra línia per copiar alguna cosa. No has acabat amb la línia; només cal deixar-ho un segon. Però VBE us atura immediatament amb un missatge d'error, similar al que es mostra aquí, que us avisa sobre alguna cosa que ja sabeu.
Una línia de codi inacabada provoca un missatge d'error discordant.
Aquests quadres de missatge us obliguen a aturar el que esteu fent per reconèixer l'error prement el botó D'acord. Després de mig dia d'aquestes caixes de missatges bruscos, estaràs preparat per llançar l'ordinador contra la paret.
Bé, podeu desar el vostre ordinador i el vostre seny desactivant la comprovació automàtica de sintaxi. Aneu al menú VBE i seleccioneu Eines → Opcions. Apareix el quadre de diàleg Opcions, que mostra la pestanya Editor. Desmarqueu l'opció Comprovació automàtica de sintaxi per aturar aquests molestos missatges d'error.
Eviteu missatges d'advertència durant la codificació.
No et preocupis per perdre't un error legítim. El vostre codi encara es tornarà vermell si us enganyeu, proporcionant una indicació visual que alguna cosa no funciona.