Condividi:        

[Excel] Cerca.Vert con indice negativo?

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Excel] Cerca.Vert con indice negativo?

Postdi Anthony47 » 10/09/08 00:02

Mi e' stato chiesto tramite messaggio privato come fare un Cerca.Vert utilizzando pero' un "indice negativo", ossia prelevando un dato da una colonna piu' a sinistra di quella in cui si cerca la chiave.
La risposta e' "ovviamente non si può"; lo spiega bene l' help on line della funzione:

help on line ha scritto:Sintassi
CERCA.VERT(valore;tabella_matrice;indice;intervallo)
Valore è il valore da ricercare nella prima colonna della matrice. Valore può essere un valore, un riferimento o una stringa di testo.
Tabella_matrice è la tabella di informazioni nella quale vengono cercati i dati. Utilizzare un riferimento a un intervallo oppure un nome di intervallo, quale Database o Elenco.
. . . .
I valori nella prima colonna di tabella_matrice possono essere testo, numeri o valori logici.
. . . .
Indice è il numero di colonna in tabella_matrice dal quale deve essere restituito il valore corrispondente. Indice uguale a 1 restituisce il valore nella prima colonna di tabella_matrice, indice uguale a 2 restituisce il valore nella seconda colonna di tabella_matrice e così via. Se indice è minore di 1, CERCA.VERT restituirà il valore di errore #VALORE!. Se indice è maggiore del numero di colonne in tabella_matrice, CERCA.VERT restituirà il valore di errore #RIF!.


Insomma, Valore viene cercato nella prima colonna della matrice, e Indice non puo' che essere >=1, salvo che non si voglia ottenere un antipatico #VALORE!

Allora come si puo' fare, in quei casi in cui il valore da cercare e' ad esempio nella terza colonna della tabella, e il valore da ottenere e' quello della prima colonna?

Posso suggerire due alternative:
1) La "Tabella Ombra"
Si puo' creare una "tabella ombra" dell' attuale, in altra posizione del foglio o su altro foglio della stessa cartella di lavoro, utilizzando semplici formule tipo =A1 che poi si copiano "in largo e in lungo" per quante colonne/righe ha la tabella originale; in questa seconda tabella, a sx delle colonne originali, si crea una copia (ulteriore) delle colonne che si pensa di dover usare nella tabella_matrice di ricerca, sempre con formule complesse come =A1 oppure =Foglio1!A1.
A questo punto si eseguira' il Cerca.Vert su questa tabella ombra, partendo dalla colonna che serve.
Una variante di questa soluzione e' la semplice replica a sx della tabella originale delle sole colonne aggiuntive da usare come tabella_matrice di ricerca; cosa che non sempre e' possibile, in funzione dell' utenza, del contenuto e dell' uso del foglio.

2) Una formula alternativa
Si puo' usare una formula piu' complessa in grado di lavorare anche con "indici" negativi; cioe':
-supponiamo che la tabella sia in A1:E100 e si voglia cercare la colonna A di una riga che in col C contiene il valore "pippo"
-si usera' la formula
Codice: Seleziona tutto
=SCARTO($C$1;CONFRONTA("pippo";C1:C100;0)-1;-2)

Nella formula, quel "-2" e' l' indice che porta da col C (la colonna in cui viene fatta la ricerca) alla colonna A.
Ovviamente la formula potrebbe essere scritta anche come
Codice: Seleziona tutto
=SCARTO($A$1;CONFRONTA("pippo";C1:C100;0)-1;0)
o dieci altri modi differenti.

L' unica controindicazione e' che la funzione "Scarto" e' di tipo "Volatile", cioe' viene ricalcolata per qualsiasi cambiamento introdotto nel foglio, non solo quando cambiano le celle di riferimento utilizzate in formula (come avviene per le funzioni normali); quindi se si devono mettere tante ma tante di queste formule il calcolo potrebbe rallentare.

Spero sia di interesse generale, ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Sponsor
 

Re: [Excel] Cerca.Vert con indice negativo?

Postdi donny80 » 16/09/08 13:00

;) Grazie1000, Anthony
donny80
Newbie
 
Post: 2
Iscritto il: 06/11/07 23:20

Re: [Excel] Cerca.Vert con indice negativo?

Postdi carlodag » 11/06/09 05:25

Scusami Anthony ritornando al mio foglio "CONTO SERVIZI PARTICOLARI" ho cosi formato la formula da te suggerita
Codice: Seleziona tutto
=SCARTO(Registro!$D$1;CONFRONTA(D7;Registro!$D$1;0)-1;-2)
e mi da sempre #ND ho visto che le celle sono tutte Testo ma niente, mi sai dare altri consigli??? o c'è errore nella formula?

grazie 1000 sempre
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [Excel] Cerca.Vert con indice negativo?

Postdi carlodag » 11/06/09 05:34

Scusami altra cosa perchè quando modifico una formula non mi compare sempre la formula nella cella e no il risultato che sia #VALORE #ND o quello giusto????
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [Excel] Cerca.Vert con indice negativo?

Postdi Anthony47 » 11/06/09 11:59

Scusami Anthony ritornando al mio foglio "CONTO SERVIZI PARTICOLARI" ho cosi formato la formula da te suggerita
Codice: Seleziona tutto
=SCARTO(Registro!$D$1;CONFRONTA(D7;Registro!$D$1;0)-1;-2)

e mi da sempre #ND ho visto che le celle sono tutte Testo ma niente, mi sai dare altri consigli??? o c'è errore nella formula?
C' e' un errore nella formula, ovviamente.
Sara' mica CONFRONTA(D7;Registro!$D$1:$D$1000;0) ??

Per la seconda domanda: non e' chiarissimo, ma penso che tu scriva la formula in una cella formattata "Testo"; formatta "Generale" e riprova.

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Excel] Cerca.Vert con indice negativo?

Postdi carlodag » 11/06/09 13:58

Ho messo questo come dici tu
Codice: Seleziona tutto
=SCARTO(D7;CONFRONTA(D7;Registro!$D$1:$D$1000;0)-1;-2)
e mi da come risultato "0" come mai??

Sai però credo che questa funzione se la riesco a capire è solo per mio bagaglio e curiosità perchè questi dati li posso scrivere una sola volta a me interessava molto l'atra cosuccia che abbiamo fatto
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo

Re: [Excel] Cerca.Vert con indice negativo?

Postdi Anthony47 » 11/06/09 16:15

Ho messo questo come dici tu
Sicuro che ho detto cio'?

Avevi scritto =SCARTO(Registro!$D$1;CONFRONTA(D7;Registro!$D$1;0)-1;-2) e ti ho fatto correggere la parte Confronta in CONFRONTA(D7;Registro!$D$1:$D$1000;0) adesso perche' scrivi =SCARTO(D7;CONFRONTA(D7;Registro!$D$1:$D$1000;0)-1;-2) ???

Sara' mica =SCARTO(Registro!$D$1 etc etc ???

Le funzioni Scarto e Confronta hanno interessanti prestazioni, che puoi capire leggendo l' help on line di excel, ma senza applicazione non vai lontano...

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Excel] Cerca.Vert con indice negativo?

Postdi carlodag » 11/06/09 17:50

Anthony47 ha scritto:
Ho messo questo come dici tu
Sicuro che ho detto cio'?

Avevi scritto =SCARTO(Registro!$D$1;CONFRONTA(D7;Registro!$D$1;0)-1;-2) e ti ho fatto correggere la parte Confronta in CONFRONTA(D7;Registro!$D$1:$D$1000;0) adesso perche' scrivi =SCARTO(D7;CONFRONTA(D7;Registro!$D$1:$D$1000;0)-1;-2) ???

Sara' mica =SCARTO(Registro!$D$1 etc etc ???

Le funzioni Scarto e Confronta hanno interessanti prestazioni, che puoi capire leggendo l' help on line di excel, ma senza applicazione non vai lontano...

Ciao.


Che dire ti chiedo umilmente scusa è che sono molto confuso con confronta scarto ehehehee comunque risultato alla grande come sempre

Grazie Mille
carlodag
Utente Junior
 
Post: 92
Iscritto il: 01/03/05 19:48
Località: Palermo


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Cerca.Vert con indice negativo?":


Chi c’è in linea

Visitano il forum: papiriof e 58 ospiti