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

come mostrare il valore dell'ultima cella non vuota della colonna?

3,462 views
Skip to first unread message

Mirco

unread,
Sep 7, 2007, 12:06:06 PM9/7/07
to
devo visualizzare in una cella il valore contenuto nell'ultima cella di una
colonna in cui vengono continuamente aggiunti valori.

elby

unread,
Sep 7, 2007, 12:22:26 PM9/7/07
to
On 7 Set, 18:06, Mirco <Mi...@discussions.microsoft.com> wrote:
> devo visualizzare in una cella il valore contenuto nell'ultima cella di una
> colonna in cui vengono continuamente aggiunti valori.

Ciao Marco
In colonna A i tuoi dati, iniziando da A1:
Prova con questa formula in qualsiasi cella che non sia la colonna A
=INDIRETTO("A"&CONTA.VALORI(A:A)+RIF.RIGA(A1)-1)
la formula dovrebbe funzionare anche con l'inserimento di righe sopra
la cella A1 iniziale.
Ciao Elio

eliano

unread,
Sep 7, 2007, 12:32:01 PM9/7/07
to

"Mirco" ha scritto:

> devo visualizzare in una cella il valore contenuto nell'ultima cella di una
> colonna in cui vengono continuamente aggiunti valori.

Ciao Mirco.
Ci si sono già sbizzarriti, in particolare giovanna & Ivano; prova:
=CELLA("contenuto";INDIRETTO("A"&CONTA.VALORI($A:$A)))
=INDIRETTO("A"&CONTA.VALORI($A:$A))
=INDIRETTO("a"&CONFRONTA(RIPETI("z";255);$A:$A))
dopo aver naturalmente verificato sulla guida in linea ogni singola funzione
utilizzata.
Eliano

eliano

unread,
Sep 7, 2007, 12:34:03 PM9/7/07
to

"elby" ha scritto:

Scusa Elio, non ti avevo visto.
Eliano

ivano

unread,
Sep 7, 2007, 1:40:41 PM9/7/07
to

> =INDIRETTO("a"&CONFRONTA(RIPETI("z";255);$A:$A))

Parlando di valori, sostituirei con:
=INDIRETTO("a"&CONFRONTA(2^1023;$A:$A))

ivano


eliano

unread,
Sep 7, 2007, 7:16:00 PM9/7/07
to

"ivano" ha scritto:

Certo Ivano; quella non la avevo presa nel copia/incolla, sorry.
Eliano

pippo

unread,
Sep 8, 2007, 8:06:27 PM9/8/07
to

"ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
news:OVvg5YX...@TK2MSFTNGP05.phx.gbl...

Ciao Ivano, avevo pensato alla seguente formula matriciale, utilizzabile
anche nel caso in cui nell'intervallo in esame, ci fosse qualche cella
vuota:

=INDIRETTO("A" & (MAX(SE((A1:A100)<>"";RIF.RIGA(A1:A100)))))

La formula funziona correttamente, ho notato pero' che, se estendo
l'intervallo all'intera colonna A:A, ottengo come risultato l'errore #NUM.

Quindi se scrivo la formula per estenderla all'intero intervallo:

=INDIRETTO("A" & (MAX(SE((A:A)<>"";RIF.RIGA(A:A)))))

ottengo il suddetto errore.

Potresti dirmi dove sbaglio? :-((

Ciao e grazie milleeee
Pippo

ivano

unread,
Sep 9, 2007, 2:15:18 AM9/9/07
to

"pippo" <nospam@nospam> ha scritto nel messaggio
news:46e3390f$0$36441$4faf...@reader5.news.tin.it...


Ciao,
non sbagli proprio!
Le matrici, almeno fino alla versione excel 2003, potevano avere come
massima dimensione 65535 elementi, ovvero 1 in meno di una colonna completa.
Problema non più presente dalla versione 2007.
ivano


pippo

unread,
Sep 9, 2007, 5:07:14 AM9/9/07
to

"ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
news:uHnqQjq8...@TK2MSFTNGP02.phx.gbl...

Ho excel 2003, pero', stranamente, se in una cella scrivo la formula
matriciale:

=MAX(RIF.RIGA(A:A))

ottengo 65536; quindi la matrice gestisce tutti gli elementi!

se seleziono tutto l'intervallo B:B, e scrivo la formula matriciale:

=(A:A)<>""

ottengo un riempimento automatico di *tutte* le celle, fino alla riga
*65536*, con valori logici (Vero/Falso).

Nei suddetti casi, quindi, sembra che il problema del limite a (65536-1) non
si presenti.

Ritornando alla formula:

=INDIRETTO("A" & (MAX(SE((A:A)<>"";RIF.RIGA(A:A)))))

ed esaminando i risultati parziali (tasto F9), sembra che l'errore sia
dovuto alla funzione SE().....

Ho provato anche a semplificare la formula, eliminando la funzione SE():

=INDIRETTO("A" & (MAX(((A1:A100)<>"")*(RIF.RIGA(A1:A100)))))

...nulla da fare...

Cosa ne pensi?

Si puo' scrivere una formula alternativa (che gestisca anche il caso con
celle vuote) ?

Ciao
Pippo


ivano

unread,
Sep 9, 2007, 7:40:38 AM9/9/07
to

"pippo" <nospam@nospam> ha scritto nel messaggio
news:46e3b7cd$0$37202$4faf...@reader3.news.tin.it...


Ciao,
penso che sia sempre valido quel che ti ho scritto nel post precedente.
Del perchè poi alcune volte le matrici vengano contemplate in modo diverso
non te lo so spiegare; però la formula:
=INDIRETTO("A" & (MAX(SE((A1:A65535)<>"";RIF.RIGA(A1:A65535)))))
funziona perfettamente.

come pure:
=SOMMA(SE(A:A>0;B:B;0))
non funziona, mentre:
=SOMMA(SE(A1:A65535>0;B1:B65535;0))
si.

ivano


pippo

unread,
Sep 9, 2007, 1:27:25 PM9/9/07
to

"ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
news:%23P7HFZt...@TK2MSFTNGP06.phx.gbl...

[cut]

>> Cosa ne pensi?

> penso che sia sempre valido quel che ti ho scritto nel post precedente.

Infatti, ho dato uno sguardo alla guida, dove viene indicato il limite
a (65536-1).

> Del perchè poi alcune volte le matrici vengano contemplate in modo diverso
> non te lo so spiegare; però la formula:
> =INDIRETTO("A" & (MAX(SE((A1:A65535)<>"";RIF.RIGA(A1:A65535)))))
> funziona perfettamente.

> come pure:
> =SOMMA(SE(A:A>0;B:B;0))
> non funziona, mentre:
> =SOMMA(SE(A1:A65535>0;B1:B65535;0))

Ok, chiaro!

Ritornando all'oggetto de post, esiste una formula che sia in grado di
trovare l'ultima cella *non* vuota, anche nel caso in cui nell'intervallo in
esame
ci siano alcune celle vuote?

Ciao e grazie milleeeee
Pippo


Mirco

unread,
Sep 10, 2007, 3:14:01 AM9/10/07
to
Beh... GRAZIE A TUTTI!!!!
Problema risolto egregiamente

Ciao

ivano

unread,
Sep 10, 2007, 3:22:46 AM9/10/07
to

"pippo" <nospam@nospam> ha scritto nel messaggio
news:46e42d09$0$37199$4faf...@reader3.news.tin.it...

Se ne era accennato:
=INDICE(A:A;CONFRONTA(2^1023;A:A))
ivano


pippo

unread,
Sep 11, 2007, 2:35:44 PM9/11/07
to

"ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
news:u%23a9ot38...@TK2MSFTNGP05.phx.gbl...

>> Ritornando all'oggetto de post, esiste una formula che sia in grado di
>> trovare l'ultima cella *non* vuota, anche nel caso in cui nell'intervallo
>> in esame
>> ci siano alcune celle vuote?

> Se ne era accennato:


> =INDICE(A:A;CONFRONTA(2^1023;A:A))

OK, ma se la colonna "A:A" contiene dati *non* numerici? ;-))

Ciao e grazie milleeeeeeee
Pippo

ivano

unread,
Sep 12, 2007, 3:06:40 AM9/12/07
to

"pippo" <nospam@nospam> ha scritto nel messaggio
news:46e6e00d$0$10618$4faf...@reader2.news.tin.it...

>
> "ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
> news:u%23a9ot38...@TK2MSFTNGP05.phx.gbl...
>
>>> Ritornando all'oggetto de post, esiste una formula che sia in grado di
>>> trovare l'ultima cella *non* vuota, anche nel caso in cui
>>> nell'intervallo in esame
>>> ci siano alcune celle vuote?
>
>> Se ne era accennato:
>> =INDICE(A:A;CONFRONTA(2^1023;A:A))
>

Ciao,
=INDICE(A:A;CONFRONTA(RIPETI("z";255);A:A))

se misto devi calcolare il massimo delle due formule...
=MAX(formula testo;formula numeri)
ivano

pippo

unread,
Sep 12, 2007, 1:36:15 PM9/12/07
to

"ivano" <chiappaiv...@hotmail.com> ha scritto nel messaggio
news:%23XVPAuQ...@TK2MSFTNGP02.phx.gbl...

>
> "pippo" <nospam@nospam> ha scritto nel messaggio
> news:46e6e00d$0$10618$4faf...@reader2.news.tin.it...

>>>> Ritornando all'oggetto de post, esiste una formula che sia in grado di

>>>> trovare l'ultima cella *non* vuota, anche nel caso in cui
>>>> nell'intervallo in esame
>>>> ci siano alcune celle vuote?

>>> Se ne era accennato:


>>> =INDICE(A:A;CONFRONTA(2^1023;A:A))

*Scusa* Ivano,.. studiando con piu' attenzione la suddetta formula, la
guida, per la funzione CONFRONTA(valore;matrice;corrisp)
spiega:

[begin]
Se corrisp è 1, CONFRONTA troverà il valore più grande che è minore o uguale
a valore.
È necessario che i valori in matrice siano disposti in ordine crescente:
...-2; -1; 0; 1; 2;...A-Z; FALSO; VERO.
Se corrisp è omesso, verrà considerato uguale a 1
[end]

Il valore che viene fatto ricercare, 2^1023, e' quello massimo
rappresentabile in excel, quindi in base alla guida, la funzione
"confronta()", dovrebbe restituire l'indice corrispondente al valore minore
o uguale a 2^1023.

Ho notato pero', che:

1) I valori in matrice *non* sempre sono disposti in ordine crescente;

2) Stranamente la formula fornisce il corretto indice del valore cercato!

Mi puoi, gentilmente, dare qualche spiegazione a riguardo??? :-((

Appena possibile, cerchero' di provare e capire anche le seguenti formule:

> =INDICE(A:A;CONFRONTA(RIPETI("z";255);A:A))
> se misto devi calcolare il massimo delle due formule...
> =MAX(formula testo;formula numeri)

zoz...@gmail.com

unread,
Jun 9, 2017, 5:58:53 PM6/9/17
to
Rilancio la domanda, questa formula mi va benissimo, ma se la mia colonna A
si trova su un foglio che chiamo triptest1 come faccio a scriverla?

Norman Jones

unread,
Jun 10, 2017, 1:51:48 AM6/10/17
to
Ciao zozzolo,
Prova:
=CERCA(2;1/(triptest1!A:A<>"");triptest1!A:A)




===
Regards,
Norman
0 new messages