In un robusto file Excel, molto ricco e popolato, spesso può capitare di perdere d’occhio la cella selezionata con relativa riga e colonna; hai bisogno magari di dare un’occhiata a un valore della stessa riga ma la cella su cui hai puntato il cursore del mouse si trova al lato opposto del foglio, diciamo che non è la cosa più comoda dell’Universo. Per questo motivo ho cercato una soluzione percorribile e poco invasiva che mi aiutasse a non perdere di vista nulla di ciò che mi tornava utile.
Ho percorso la via della modifica VBA, come già successo in passato con altro. Ispirazione e script perfettamente funzionante ereditato da extendoffice.com/it/documents/excel/1494-excel-highlight-active-row-and-column.html, io ho solo dovuto ritoccare il colore scelto per evitare di andare in contrasto con quelli già utilizzati nel mio foglio Excel. Ti riepilogo molto rapidamente i passaggi da fare:
Con Excel aperto, e il tuo foglio di lavoro in primo piano, premi la combinazione ALT
+ F11
da tastiera, si aprirà il Visual Basic Application Editor. Seleziona con un doppio clic il foglio di lavoro che ti interessa modificare, comparirà una finestra vuota (bianca) subito a destra. A questo punto potrai copiare e incollare il seguente codice all’interno di quella finestra:
Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) 'Update 20140318 Static xRow Static xColumn If xColumn <> "" Then With Columns(xColumn).Interior .ColorIndex = xlNone End With With Rows(xRow).Interior .ColorIndex = xlNone End With End If pRow = Selection.Row pColumn = Selection.Column xRow = pRow xColumn = pColumn With Columns(pColumn).Interior .ColorIndex = 6 .Pattern = xlSolid End With With Rows(pRow).Interior .ColorIndex = 6 .Pattern = xlSolid End With End Sub
Considera che il codice andrà a evidenziare l’intera riga e l’intera colonna rispetto alla cella selezionata in quel momento. Se ti sposterai utilizzando la tastiera (o il clic del mouse), cambierà la relativa evidenziazione, tutto live. Salvando quanto copiato e incollato nella finestra dell’editor VBA (che ora puoi chiudere) vedrai immediatamente il risultato, non c’è bisogno di eseguire alcuna macro (quindi rifiuta eventuali messaggi a video in merito, come quello in immagine qui di seguito):
Se al termine del tuo lavoro desideri ripristinare il normale funzionamento del foglio Excel (quindi rimuovere l’evidenziazione), dovrai tornare nell’editor VBA (sempre con ALT
+ F11
da tastiera) e cancellare tutto il codice sorgente che hai precedentemente copiato e incollato, quindi salvare la modifica e chiudere l’editor. L’ultima colonna e riga rimaste evidenziate dovranno essere riportate manualmente allo stile di base (copia il formato da una colonna corretta e applicalo a quella rimasta evidenziata, ripeti l’operazione per la riga).
Quasi dimenticavo: se vuoi modificare il colore dell’evidenziazione, dovrai intervenire su entrambi i valori ColorIndex = 6
e inserire un differente numero al posto del 6, secondo una palette che puoi facilmente trovare in una lista come quella proposta qui: dmcritchie.mvps.org/excel/colors.htm. Per capirci: evidenziare con un bel verde leggibile equivale al numero 43.
Buon lavoro.
L'articolo potrebbe non essere aggiornato
Questo post è stato scritto più di 5 mesi fa, potrebbe non essere aggiornato. Per qualsiasi dubbio ti invito a lasciare un commento per chiedere ulteriori informazioni! :-)
Pillole
Le pillole sono articoli di veloce lettura dedicati a notizie, script o qualsiasi altra cosa possa essere "divorata e messa in pratica" con poco. Uno spazio del blog riservato agli articoli "a bruciapelo"!
Se vuoi leggere le altre pillole fai clic qui.