Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Come posso evidenziare solo l'ultimo valore cambiato in una colonna?

Ultimo Aggiornamento: 12/02/2020 22:30
Post: 1
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
01/02/2020 16:56

Un saluto a tutti, ho questo problema, ho un elenco in continua evoluzione di valori tipo il seguente:

216,73
187,39
187,39
187,39
69,97
69,97
24,74
24,74
24,74
996,07
978,83
922,12
922,12
22,37
956,03
922,12
922,12
922,12
914,02
902,03
902,03
902,03
822,04 *
822,04
822,04

e vorrei evidenziare solo l'ultimo valore che differisce dal precedente, nell'esempio di sopra dovrebbe essere evidenziato il valore con l'asterisco, ovviamente mi serve che all'inserimento di un altro valore diverso dall'ultimo il vecchio valore evidenziato torni normale e l'ultimo venga evidenziato.

Per evidenziare intendo il cambio del colore dello sfondo o del carattere.

Qualcuno sa dirmi come fare?

Grazie!!!
[Modificato da andorea 01/02/2020 16:56]
Post: 4.323
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
ONLINE
01/02/2020 17:42

Non so se ho capito bene

Supponendo i dati in colonna A prova questa macro


vb
Sub evidenzia()
Dim i As Integer
Dim ur As Long
ur = Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To ur
    If Range("a" & i).Value <> Range("a" & i).Offset(-1, 0).Value Then
        Range("a" & i).Interior.ColorIndex = 6
    End If
Next i
End Sub


Alfredo
Post: 2.505
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
01/02/2020 17:59

ciao
forse è meglio partire dal fondo e se trovato uscire dal loop

saluti



Domenico
Win 10 - Excel 2016
Post: 2
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
01/02/2020 19:11

@alfrimpa
Intanto grazie per il suggerimento e soprattutto per l'attenzione.

Non sono del tutto convinto per questi motivi motivi:

1) il numero delle righe è molto variabile
2) lo devo poter applicare a diverse colonne
3) deve rilevare qualsiasi tipo di variazione, sia in diminuzione che in aumento
4) sarebbe meglio se il controllo lo facesse una formula in cella, senza usare macro (in alcuni pc dove uso excel c'è un firewall/antivirus molto restrittivo che blocca l'esecuzione di macro o costringe a chiedere all'amministratore di sistema di inserire delle eccezioni...)

Post: 3
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
01/02/2020 19:17

@ dodo47
Sono d'accordo con te, l'ideale sarebbe scansire dal fondo alla ricerca di una variazione di valore, ignorando le celle vuote e "marcare" quella che ha un valore differente, ho provato a farlo anche inserendo una colonna nascosta che semplicemente funge da marcatore di cambiamento ma poi mi sono arenato per evidenziare la cella con il valore vero e proprio...
Post: 4
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
01/02/2020 19:21

@ Dshortway
Hai pensato bene, un range è essenziale e facilmente definibile (sempre ammesso e non concesso che si adatti all'inserimento di righe nell'elenco...), purtroppo come ho detto prima, devo cercare di evitare le macro...
Post: 1.874
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Veteran
365
OFFLINE
01/02/2020 23:11

ciao
utilizza una colonna d'appoggio.

da A2 i dati
in B2 scrivi
=SE(O(A2=A1;A3="");"";MAX($B$1:B1)+1)

e tirala in giù

seleziona da A2 a dove ti serve
formattazione condizionale
formule
scrivi
=$B2=GRANDE(B2:B26;1)

conferma.

non riesco a cancellare il file
con la formattazione nella cella sopra.

ho allegato un secondo file esatto
[Modificato da federico460 01/02/2020 23:20]
Post: 2.240
Registrato il: 21/03/2008
Città: LOCATE VARESINO
Età: 76
Utente Veteran
2007 / 13
OFFLINE
02/02/2020 10:42

ciao

altra soluzione con F.C.

io ho selezionato 4 colonne fino a righe 200 e ho inserito la seguente formula

=CONFRONTA(INDIRETTO(INDIRIZZO(MAX(INDICE((A$1:A$200<>"")*RIF.RIGA(A$1:A$200);));RIF.COLONNA(A$1)));A$1:A$200;0)=RIF.RIGA()

a fianco ho lasciato quattro colonne per controllo ( PS. non servono )

allego il file di prova generato

Controlla se puo' essere utile
PS Con una Sub() di controllo e' sempre piu' performante

[Modificato da locatevaresino 02/02/2020 10:42]
Ciao da locate
excel 2007 / 13
Post: 5
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
02/02/2020 21:10

@ locatevaresino
Ciao,
la tua soluzione sembra la più semplice da applicare ma ha un problema, se in una cella si trova un testo (condizione temporanea ma possibile) questo viene evidenziato mentre dovrebbe essere ignorato, dovrebbe considreare solo i numeri...

Come ho un po di tempo provo a modificare la tua formula e vediamo se riesco a fargli ignorare i testi, per ora grazie.

Ovviamente grazie a tutti voi che mi avete dato delle idee su cui lavorare, mi siete stati tutti davvero molto utili!!!

Se avete altri suggerimenti ve ne sarò grato!

03/02/2020 14:16

Scusate se intervengo, le formule di locatevaresino sono OK
Rimane il problema che "intervengono" solo se aggiungo una riga alla colonna.

Secondo me, non esiste un...
>>>in alcuni pc dove uso excel c'è un firewall/antivirus molto restrittivo che blocca l'esecuzione di macro o costringe a chiedere all'amministratore di sistema di inserire delle eccezioni...
Si tratta solo di abilitare le macro in Opzioni Excel (oppure disattivare "la procedura nell'antivirus"

Comunque anche fosse, per lavoro chiederei all'amministratore di abilitarle.
PS. Chiedo agli EsperTi, come evitare l'errore VBA nell'inserire due valori insieme.
Post: 6
Registrato il: 21/11/2017
Città: PORTOSCUSO
Età: 51
Utente Junior
16.28
OFFLINE
12/02/2020 22:30

Rieccomi,
ho provato ad implementare le vostre soluzioni ma mi sono trovato in difficoltà, ammetto che non ho capito la meccanica con cui viene evidenziata la cella e vi chiedo di spiegarmi meglio cosa state facendo fare alle celle e come lo state facendo...

Grazie.
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 09:34. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com