Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Evidenziare la riga della cella attiva

1,474 views
Skip to first unread message

Final Job

unread,
Jun 3, 2016, 11:57:50 AM6/3/16
to
Buongiorno
Ho l'esigenza di evidenziare la riga della cella dove si trova il
puntatore senza cancellare la formattazione esistente

Ho inserito questa routine nel foglio di lavoro

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Range("a2") = Target.Row
Application.ScreenUpdating = True
End Sub

Scrive il riferimento della riga in uso nella cella A2 ad ogni cambio di
posizione

Ho poi effettuato una formattazione condizionale sul foglio di lavoro
che mi colora le celle se la formula:
=RIF.RIGA()=$A$2 è soddisfatta

Questa soluzione compie ciò che mi serve ma impedisce di utilizzare la
funzione "annulla" del foglio quando effettuo modifiche.

Quale altra soluzione potrebbe effettuare il lavoro senza inficiare
l'annullamento?

Grazie
Ale

Norman Jones

unread,
Jun 3, 2016, 12:49:53 PM6/3/16
to
Ciao Final Job,
Nel modulo ThisWoekbook (Questa_cartella_di_lavoro), incoola il seguente
codice di evento:
'=========>>
Option Explicit

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target As Range)
Application.ScreenUpdating = True
End Sub
'<<=========

In ciacun foglio di interesse, con l'intervallo di interesse
selezionato, crea una nuova regola di formattazione condizionale,
utilizzando la formula:
=CELLA("Riga")=RIF.RIGA()

e la seconda regol;a:
=CELLA("COL")=RIF.COLONNA()

A titolo di esempio, potresti scaricare il file FinaJob20160603.xlsm a:
https://www.dropbox.com/s/1lx5jd8okbgcg9s/FinalJob20160603.xlsm?dl=0





===
Regards,
Norman

Final Job

unread,
Jun 3, 2016, 3:41:24 PM6/3/16
to
Ciao, ben ritrovato e grazie per la collaborazione.

Con il tuo codice, il problema dell'annullamento delle modifiche è
risolto ma, almeno nella mia applicazione, le operazioni presentano
delle latenze nella evidenziazione delle righe che prima non avevo.

A meno di miei errori, serve un doppio click su una cella di non
interesse prima di cliccare ed ottenere il risultato in quella voluta.

Ti allego un esempio a questo link:
https://www.dropbox.com/s/0pp3583sgxkm540/PROVA%20NORMAN.xls?dl=0

Ciao...buona serata ....pub?
Ale

Il 03/06/2016 18:49, Norman Jones ha scritto:
> Ciao Final Job,
>
> On 03/06/2016 16:57, Final Job wrote:
>> Buongiorno
>> Ho l'esigenza di evidenziare la riga della cella dove si trova il
>> puntatore senza cancellare la formattazione esistente

>
> Nel modulo ThisWoekbook (Questa_cartella_di_lavoro), incoola il seguente
> codice di evento:
> '=========>>
> Option Explicit
>
> Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
> Target As Range)
> Application.ScreenUpdating = True
> End Sub
> '<<=========
>
> In ciacun foglio di interesse, con l'intervallo di interesse
> selezionato, crea una nuova regola di formattazione condizionale,
> utilizzando la formula:
> =CELLA("Riga")=RIF.RIGA()
>
> e la seconda regol;a:
> =CELLA("COL")=RIF.COLONNA()

> Regards,
> Norman

Norman Jones

unread,
Jun 3, 2016, 4:09:23 PM6/3/16
to
Ciao Final Job,

On 03/06/2016 20:41, Final Job wrote:
> Ciao, ben ritrovato e grazie per la collaborazione.
>
> Con il tuo codice, il problema dell'annullamento delle modifiche è
> risolto ma, almeno nella mia applicazione, le operazioni presentano
> delle latenze nella evidenziazione delle righe che prima non avevo.
>
> A meno di miei errori, serve un doppio click su una cella di non
> interesse prima di cliccare ed ottenere il risultato in quella voluta.
>
> Ti allego un esempio a questo link:
> https://www.dropbox.com/s/0pp3583sgxkm540/PROVA%20NORMAN.xls?dl=0
>
> Ciao...buona serata ....pub?
> Ale

Ho scaricato il tuo file E CREDO CHE Le latenze siano assolutamente
inaccettabile!

Fortunatamente, la risoluzione è molto semplice! Basta spostare il
codice dal modulo standard (Modulo1) e incollarlo, come suggerito da me,
nel modulo ThisWorkbook!

L'ho fatto io e ho caricato il tuo file a:
https://www.dropbox.com/s/3134gciy2zwmdbu/PROVA%20NORMAN.xls?dl=0




===
Regards,
Norman

Norman Jones

unread,
Jun 3, 2016, 4:16:39 PM6/3/16
to
On 03/06/2016 21:09, Norman Jones wrote:
> L'ho fatto io e ho caricato il tuo file a:
> https://www.dropbox.com/s/3134gciy2zwmdbu/PROVA%20NORMAN.xls?dl=0

Prova invece il file PROVA NORMAN#2.xls a:
https://www.dropbox.com/s/8p2eee3udesa45o/PROVA%20NORMAN%232.xls?dl=0




===
Regards,
Norman

Final Job

unread,
Jun 3, 2016, 5:10:49 PM6/3/16
to
Ahhhh!
chissà che accidente di manipolazione avevo fatto.....

Prima o poi ti sorpasserò...... ma per il momento devi avere pazienza

Molta pazienza

Tutto ok

Grazie Norman
Ale

Norman Jones

unread,
Jun 3, 2016, 5:14:25 PM6/3/16
to
On 03/06/2016 22:10, Final Job wrote:
> Ahhhh!
> chissà che accidente di manipolazione avevo fatto.....
>
> Prima o poi ti sorpasserò...... ma per il momento devi avere pazienza
>
> Molta pazienza
>
> Tutto ok
>
> Grazie Norman


Benissimo!


Alla prossima.



Ora vado al pub!



===
Regards,
Norman

Norman Jones

unread,
Jun 3, 2016, 5:28:41 PM6/3/16
to
Ciao Ale,

Avrei anche voluto dire che avresti potuto semplificare l'intervallo per
la formattazione condizionale ad un solo intervallo:
=$A$1:$AD$28




===
Regards,
Norman

Final Job

unread,
Jun 3, 2016, 6:55:04 PM6/3/16
to
Certo; si .... passa una buona serata
Ale

Final Job

unread,
Jun 4, 2016, 11:19:37 AM6/4/16
to
Scusa Norman, due domande (se e quando puoi)

1) usando la stessa filosfia di codice che mi hai fornito ieri, si
potrebbe attivare lo stesso risultato anche in altri fogli?

Esempio: sul foglio 1 evidenzio la riga 21. La stessa riga mi risulta
evidenziata anche se passo al foglio 2 o al foglio 5 e poi, se dal
foglio 2 o dal foglio 5 cambio riga, l'evidenziazione cambia anche nel
foglio 1.

2) l'assegnazione delle regole di formattazione condizionale per la zona
d'interesse da considerare (se fatta in una unica soluzione evidenziando
in blocco gli intervalli desiderati) mi cancella le formattazioni
esistenti. La soluzione di questa particolarità non può che passare per
un lavoro più lungo e attento nell'assegnazione delle regole che tenga
conto di quelle già esistenti vero? Non credo esistano altre soluzioni ....

Buona serata
Ale

Norman Jones

unread,
Jun 4, 2016, 3:07:01 PM6/4/16
to
Ciao Ale,

On 04/06/2016 16:19, Final Job wrote:
> Scusa Norman, due domande (se e quando puoi)
>
> 1) usando la stessa filosfia di codice che mi hai fornito ieri, si
> potrebbe attivare lo stesso risultato anche in altri fogli?

Certo: basta selezionare l'intervallo di interesse su qualunque foglio
del file in cui il mio codice si trova nel modulo ThisWorkbook, e
impostare la stessa formula per la formatazione condizionale, ovvero
=CELLA("Riga")=RIF.RIGA()

> Esempio: sul foglio 1 evidenzio la riga 21. La stessa riga mi risulta
> evidenziata anche se passo al foglio 2 o al foglio 5 e poi, se dal
> foglio 2 o dal foglio 5 cambio riga, l'evidenziazione cambia anche nel
> foglio 1.

Se la tua intenzione sia che avendo selezionato una cella sul primo
foglio e, come risultato, evidenziata la riga corrispondente, che la
*STESSA* riga sia evidenziata su un altro foglio, indipendentemente da
quale riga sia attiva sul secondo foglio, ciò richiederebbe altro codice
VBA e, purtroppo, si perderebbe la posibilità di annullare qualunque
azione.

In genere, l'esecuzione di una macro svuota lo stack interno di Excel e
rende impossibile l'annullamento di un azione precedente. Tuttivia, e
soprendentemente, il codice proposo da me non lo fa. Se, però, fosse
necessario altro codice, ritengo che questo comportamento non sarebbe
ripetuto.

> 2) l'assegnazione delle regole di formattazione condizionale per la zona
> d'interesse da considerare (se fatta in una unica soluzione evidenziando
> in blocco gli intervalli desiderati) mi cancella le formattazioni
> esistenti. La soluzione di questa particolarità non può che passare per
> un lavoro più lungo e attento nell'assegnazione delle regole che tenga
> conto di quelle già esistenti vero? Non credo esistano altre soluzioni ....

No, non necessariamente! Prova a spostare la mia rgola come prima regola
della formatazione condizionale e seleziona la casella di controllo
*Interrompi se Vera*per quella regola. A questo proposito, vedi:
https://goo.gl/v06nMZ


Ho modificato il tuo file sia per dimostrare la possibilità di
evidenziare la riga attiva su su più fogli che per dimostrare, su
Foglio1, la coesistenza di più regole di formatazione condizionale.

Nota che la mia versione di Excel è inglese e, mentre Excel tradurrebbe
le funzione di Excel in italaliano, non sono sicuro che lo farebbe per i
paeametri della funzione CELLA. Pertanto, sarebbe eventualmente
modificare il mio parametro CELLA("Row") in CELLA("Riga") nelle regole
della formatazione condizionale di questo file.

Potresti scaricare il file PROVA NORMAN#3.XLSM a:
https://www.dropbox.com/s/twhpx1i3vzb7wo5/PROVA%20NORMAN%233.xlsm?dl=0






===
Regards,
Norman

Norman Jones

unread,
Jun 4, 2016, 3:10:41 PM6/4/16
to
On 04/06/2016 20:06, Norman Jones wrote:
> e soprendentemente, il codice proposo da me non lo fa

e soprendentemente, il codice proposto da me non lo fa




===
Regards,
Norman

Final Job

unread,
Jun 4, 2016, 4:27:55 PM6/4/16
to
Ahahaha ... di nuovo buona serata .... molto gentile
Ale

francesco de Minicis

unread,
Jul 2, 2021, 9:02:38 AM7/2/21
to
Ciao a tutti.

Scusate ma io con fogli google lavoro in modo molto basilare ma mi piacerebbe davvero capire come poter attivare un'evidenziazione della riga e la colonna della cella selezionata in quel momento. Leggo codici in questa conversazione ma non capisco come poter applicare e dove inserire questi dati. Qualcuno può aiutarmi?
0 new messages