cuntenutu
Avete un grande monitoru, ma i tavulini chì travagliate sò ancu più grande. E, fighjendu nantu à u screnu in cerca di l'infurmazioni necessarii, ci hè sempre una chance di "slip" i vostri ochji à a prossima linea è fighjà in a direzzione sbagliata. Cunnoscu ancu e persone chì, per tali occasioni, mantenenu sempre un regnu di lignu vicinu à elli per attaccà à a linea nantu à u monitor. Tecnulugie di u futuru!
È se a fila è a colonna attuale sò evidenziate quandu a cellula attiva si move in u fogliu? Un tipu di selezzione di coordenate cum'è questu:
Megliu chè un regnu, nò?
Ci hè parechje manere di varià cumplessità per implementà questu. Ogni metudu hà i so pros è cuns. Fighjemu un ochju à elli in detail.
Metudu 1. Obvious. Macro chì mette in risaltu a fila è a colonna attuale
A manera più ovvia di risolve u nostru prublema "nantu à a fronte" - avemu bisognu di una macro chì seguitarà u cambiamentu in a selezzione nantu à u fogliu è selezziunate tutta a fila è a colonna per a cellula attuale. Hè ancu desideratu di pudè attivà è disattivà sta funzione se ne necessariu, per chì una tale selezzione in forma di croce ùn ci impedisce micca di entre, per esempiu, formule, ma solu travaglia quandu guardemu a lista in cerca di i necessarii. infurmazione. Questu ci porta à i trè macros (selezziunà, attivà è disattivà) chì deve esse aghjuntu à u modulu di foglia.
Apertura un fogliu cù una tavula in quale vulete ottene una selezzione di coordenada cusì. Cliccate cù u dirittu nantu à a tabulazione di u fogliu è selezziunate u cumandamentu da u menù di cuntestu Testu fonte (Codice surgente).A finestra di Visual Basic Editor deve esse aperta. Copia stu testu di sti trè macros in questu:
Dim Coord_Selection As Boolean 'Variabile globale per a selezzione on/off Sub Selection_On() 'Macro nantu à a selezzione Coord_Selection = True End Sub Selection_Off () 'Macro off selection Coord_Selection = False End Sub 'Procedura principale chì esegue a selezzione Private Sub Worksheet_SelectionChange (ByVal Target As Range) Dim WorkRange As Range If Target.Cells.Count > 1 Allora Exit Sub 'se più di 1 cellula hè sceltu, esce If Coord_Selection = False Allora Exit Sub 'se a selezzione hè off, esce Application.ScreenUpdating = False Set WorkRange = Range ("A6: N300") 'indirizzu di u spaziu di travagliu in quale a selezzione hè visibile
Cambia l'indirizzu di a gamma di travagliu à u vostru propiu - hè in questu intervallu chì a nostra selezzione hà da travaglià. Allora chjude u Visual Basic Editor è torna à Excel.
Pulsà a scurciatoia di u teclatu ALT + F8per apre una finestra cù una lista di macros dispunibili. Macro Selezzione_On, cum'è pudete guessà, include a selezzione di coordenate nantu à u fogliu attuale, è a macro Selezzione_Off - si spegne. In a stessa finestra, clicchendu u buttone login (Opzioni) Pudete assignà scurciate di tastiera à queste macros per un lanciamentu faciule.
Vantaghji di stu mètudu:
- relativa facilità di implementazione
- selezzione - l'operazione hè innocu è ùn cambia micca u cuntenutu o u furmatu di e celle di u fogliu in ogni modu, tuttu ferma cum'è hè
Cons di stu mètudu:
- una tale selezzione ùn funziona micca bè s'ellu ci sò cellule unite nantu à u fogliu - tutte e fila è e colonne incluse in l'unione sò scelti in una volta.
- Se premete accidentalmente a chjave Delete, allora micca solu a cellula attiva serà sguassata, ma tutta l'area selezziunata, vale à dì sguassate dati da tutta a fila è a colonna.
Metudu 2. Uriginale. CELL + Funzione di Formattazione Condizionale
Stu metudu, ancu s'ellu hà un paru di inconvenienti, mi pari assai eleganti. Per implementà qualcosa aduprendu solu l'arnesi Excel integrati, l'entrata minima in a prugrammazione in VBA hè acrobatica 😉
U metudu hè basatu annantu à l'usu di a funzione CELL, chì pò dà assai infurmazioni diffirenti nantu à una cellula data - altezza, larghezza, numeru di fila-colonna, formatu di numeri, etc. Sta funzione hà dui argumenti:
- una parolla di codice per u paràmetru, cum'è "colonna" o "fila"
- l'indirizzu di a cellula per quale vulemu determinà u valore di stu paràmetru
U truccu hè chì u sicondu argumentu hè opcional. Se ùn hè micca specificatu, allora a cellula attiva attuale hè presa.
U sicondu cumpunente di stu metudu hè furmatu di cundizzioni. Questa funzione d'Excel estremamente utile vi permette di furmà automaticamente e cellule s'ellu si scontranu cundizioni specificate. Se unimu sti dui idee in una sola, uttene l'algoritmu seguente per implementà a nostra selezzione di coordenate attraversu un furmatu cundizionale:
- Selezziunà a nostra tavula, vale à dì quelli cellule in quale a selezzione di coordenate deve esse visualizata in u futuru.
- In Excel 2003 è più vechji, apre u menu Format - Formattazione Conditional - Formula (Format - Formattazione Condizionale - Formula). In Excel 2007 è più recente - cliccate nantu à a tabulazione Home (Casa)buttone Formattazione Condizionale - Crea Rule (Formattazione Condizionale - Crea Regola) è sceglite u tipu di regula Aduprate una formula per determinà quali cellule à furmà (Usà a formula)
- Inserite a formula per a nostra selezzione di coordenate:
=OR (CELL ("fila") = FILA (A2), CELLULA ("colonna") = COLONNA (A2))
=OR (CELL («fila») = FILA (A1), CELLULA («colonna») = COLONNA (A1))
Questa formula cuntrolla per vede se u numeru di colonna di ogni cellula in a tavula hè u listessu cum'è u numeru di colonna di a cellula attuale. Cume cù e colonne. Cusì, solu quelli celluli chì anu un numeru di colonna o un numeru di fila chì currisponde à a cellula attuale seranu cumpletu. È questu hè a selezzione di coordenate in forma di croce chì vulemu ottene.
- Cliccate u buttone Framework (Format) è stabilisce u culore di riempimentu.
Tuttu hè quasi prontu, ma ci hè una sfumatura. U fattu hè chì Excel ùn cunsiderà micca un cambiamentu in a selezzione cum'è un cambiamentu in i dati nantu à u fogliu. È, in u risultatu, ùn provoca micca a recalculazione di e formule è a recoloring di formate cundizionale solu quandu a pusizione di a cellula attiva cambia. Dunque, aghjunghje una macro simplice à u modulu di foglia chì farà questu. Cliccate cù u dirittu nantu à a tabulazione di u fogliu è selezziunate u cumandamentu da u menù di cuntestu Testu fonte (Codice surgente).A finestra di Visual Basic Editor deve esse aperta. Copia stu testu di sta macro simplice in questu:
Private Sub Worksheet_SelectionChange (ByVal Target As Range) ActiveCell.Calculate End Sub
Avà, quandu a selezzione cambia, u prucessu di recalculating a formula cù a funzione serà lanciatu CELLULU in furmatu cundizionale è inundate a fila è a colonna attuale.
Vantaghji di stu mètudu:
- A formattazione cundizionale ùn rompe micca a formattazione di a tavola persunalizata
- Questa opzione di selezzione funziona bè cù e cellule unite.
- Nisun risicu di sguassà una fila intera è una colonna di dati nantu à un clic accidentale cancillari.
- I macros sò minimamente usati
Cons di stu mètudu:
- A formula per u formatting cundizionale deve esse inserita manualmente.
- Ùn ci hè micca un modu rapidu per attivà / disattivà tali furmatu - hè sempre attivatu finu à chì a regula hè sguassata.
Metudu 3. Ottimale. Formattazione Condizionale + Macros
Golden significa. Utilizemu u mecanismu per seguità a selezzione nantu à u fogliu utilizendu macros da u metudu-1 è aghjunghjenu una evidenziazione sicura cù u furmatu condicionale da u metudu-2.
Apertura un fogliu cù una tavula in quale vulete ottene una selezzione di coordenada cusì. Cliccate cù u dirittu nantu à a tabulazione di u fogliu è selezziunate u cumandamentu da u menù di cuntestu Testu fonte (Codice surgente).A finestra di Visual Basic Editor deve esse aperta. Copia stu testu di sti trè macros in questu:
Dim Coord_Selection As Boolean Sub Selection_On () Coord_Selection = True End Sub Sub Selection_Off () Coord_Selection = False End Sub Private Sub Worksheet_SelectionChange (ByVal Target As Range) Dim WorkRange As Range, CrossRange As Range Set WorkRange = Range ("A7:N300") 'адрес рабочего диапазона с таблицей If Target.Count > 1 Allora Exit Sub If Coord_Selection = False Allora WorkRange.FormatConditions.Delete Exit Sub End If Application.ScreenUpdating, If Not Interconnessu (TargetRange) = False Interfacce (Target) WorkRange, Union (Target.EntireRow, Target.EntireColumn)) WorkRange.FormatConditions.Delete CrossRange.FormatConditions.Add Type:=xlExpression, Formula1:="=1" CrossRange.FormatConditions(1).Interior.ColorIndex = 33 Target.Formatditions .Sguassà End If End Sub
Ùn vi scurdate di cambià l'indirizzu di u spaziu di travagliu à u vostru indirizzu di tavula. Chiudi l'Editor Visual Basic è torna à Excel. Per utilizà i macros aghjuntu, appughjà u scurciatu di teclatu ALT + F8 è prucede in u listessu modu cum'è u metudu 1.
Metudu 4. Bella. FollowCellPointer add-on
Excel MVP Jan Karel Pieterse da l'Olanda dà un add-on gratuitu nantu à u so situ web SeguiCellPointer(36Kb), chì risolve u listessu prublema disegnu linee di freccia grafica cù macros per mette in risaltu a fila è a colonna attuale:
Bella suluzione. Micca senza glitches in i posti, ma sicuramente vale a pena pruvà. Scaricate l'archiviu, sbulicà u discu è installate l'add-on:
- in Excel 2003 è più vechji - attraversu u menu Serviziu - Add-ons - Panoramica (Strumenti - Add-Ins - Sfoglia)
- in Excel 2007 è più tardi, attraversu File - Opzioni - Add-ons - Vai - Sfoglia (File - Opzioni Excel - Add-Ins - Vai à - Sfoglia)
- Chì sò i macros, induve inserisce u codice macro in Visual Basic