risposta di Teylyn lavorato molto per me, ma ho dovuto modificare un po 'per ottenere risultati corretti. Voglio fornire una spiegazione estesa per chiunque ne abbia bisogno.
mia messa a punto è stata la seguente:
- Foglio1: i dati completi del 2014
- Foglio2: righe aggiornate per il 2015 in A1: D50, filtrate per colonna
- Foglio3: filari fusa
- I miei dati non hanno una riga di intestazione
Ho inserito la seguente formula nella cella A1 di Sheet3:
=iferror(vlookup(Sheet1!A$1;Sheet2!$A$1:$D$50;column(A1);false);Sheet1!A1)
Leggere come segue: Prendere il valore della prima colonna in Foglio1 (dati precedenti). Cerca in Sheet2 (righe aggiornate). Se presente, emettere il valore dalla colonna indicata in Sheet2. In caso di errore, emettere il valore per la colonna corrente di Sheet1.
Note:
Nella mia versione della formula, ";" è usato come separatore di parametri invece di ",". Questo perché mi trovo in Europa e usiamo il "," come separatore decimale. Modificare ";" torna a "," se vivi in un paese in cui "." è il separatore decimale.
A $ 1: significa sempre prendere la colonna 1 quando si copia la formula in una cella in una colonna diversa. $ A $ 1 significa: prendere sempre la cella esatta A1, anche quando si copia la formula in una riga o colonna diversa.
Dopo aver incollato la formula in A1, ho esteso l'intervallo alle colonne B, C, ecc., Fino a raggiungere l'intera larghezza della tabella. A causa del $ -signs utilizzato, questo dà la seguente formula di in celle B1, C1, ecc .:
=IFERROR(VLOOKUP('Sheet1'!$A1;'Sheet2'!$A$1:$D$50;COLUMN(B1);FALSE);'Sheet1'!B1)
=IFERROR(VLOOKUP('Sheet1'!$A1;'Sheet2'!$A$1:$D$50;COLUMN(C1);FALSE);'Sheet1'!C1)
e così via. Si noti che la ricerca viene ancora eseguita nella prima colonna. Questo perché VLOOKUP richiede che i dati di ricerca vengano ordinati nella colonna in cui viene eseguita la ricerca. La colonna di output è tuttavia la colonna in cui viene incollata la formula.
Successivamente, selezionare un rettangolo nel Foglio 3 partendo da A1 e con le dimensioni dei dati in Foglio1 (stesso numero di righe e colonne). Premi Ctrl-D per copiare le formule della prima riga in tutte le celle selezionate.
celle A2, A3, ecc otterranno queste formule:
=IFERROR(VLOOKUP('Sheet1'!$A2;'Sheet2'!$A$1:$D$50;COLUMN(A2);FALSE);'Sheet1'!A2)
=IFERROR(VLOOKUP('Sheet1'!$A3;'Sheet2'!$A$1:$D$50;COLUMN(A3);FALSE);'Sheet1'!A3)
causa dell'uso di $ -signs, l'area di ricerca è costante, ma i dati di ingresso viene utilizzato dalla riga corrente.
convertire entrambi in tabelle e utilizzare le funzioni di corrispondenza e indice. –