Domanda

Usando Vlookup, quando si verifica una corrispondenza, voglio visualizzare il valore della colonna C dal foglio 2 dalla stessa riga in cui si è verificata la partita. La formula che ho inventato prende il valore dalla colonna C foglio 2 ma lo prende dalla riga in cui la formula viene incollata sul foglio 3 anziché dove si è verificata la partita.

Ecco la mia formula che non funziona:

=IF(VLOOKUP(Sheet1!A:A,Sheet2!A:A,1,FALSE),Sheet2!C:C,"NODATA")

Come posso prendere il valore dalla riga in cui si è verificata la partita?

È stato utile?

Soluzione

Devi ottenere manualmente l'indice che stai cercando, quindi ottenere il valore su quell'indice:

=INDEX(Sheet2!C:C, MATCH(Sheet1!A:A,Sheet2!A:A,FALSE))

Altri suggerimenti

Per essere chiari, non sono del tutto sicuro di capire cosa stai cercando di ottenere. Forse il seguente aiuta ...

Supponiamo di avere 3 fogli in una cartella di lavoro come segue:

    Sheet1            Sheet2                 Sheet3
    A                 A    B    C            A     B
1   10                2    h    Apple        10    Apple
2   20                g    4    Banana       25    n/a
3   30                l    !    Pear         40    Grape
4   40                g    *    Grape        30    Pear

Nella colonna B del foglio 3 ho la seguente formula:

=INDEX(Sheet2!$C$1:$C$4,MATCH(VLOOKUP(A1,Sheet1!$A$1:$A$4,1,FALSE),Sheet1!$A$1:$A$4,1))

Spiegare:

  • Il VLOOKUP Cerca il valore dal foglio 3, col a in foglio1
  • Il MATCH Restituisce la riga in Sheet1 del risultato Vlookup
  • Il INDEX quindi utilizza il numero di riga per scegliere il valore giusto dal valore in foglio2

Ancora una volta, non sono sicuro se questo è quello che volevi esattamente. Potrebbe aiutarti a iniziare ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top