Excel, confronta le celle in fogli diversi in una cartella di lavoro


1

Sono un vero nooby e ho alcune domande.

Ho 5 fogli (A, B, C, D, E). Ogni foglio contiene numeri (10 righe-15 righe) da A1 a I15

Ora voglio fare un sesto foglio in cui posso confrontare i valori della cella (più alto, stesso, più basso) per il foglio A e B o C e G o A e H.

(Posso farlo ora cambiando il contenuto di tutte le celle da = foglio A! A1-foglioB! A1 a = foglioA! C1-foglioB! G1 eccetera e poi la formattazione condizionale.)

Ma voglio farlo in modo più dinamico compilando solo due celle sul foglio 6, il contenuto di quella cella dovrebbe essere usato dalle altre celle, come se volessi confrontare il foglio C en H, la prima cella dovrebbe leggere = foglioC! A1-sheetH! A1 invece di = sheetA! A1-sheetB! A1 e la seconda cella visualizzerebbe = sheetC! A2-sheetH! A2.

So di averlo descritto non perfettamente, ma spero che tu abbia avuto l'idea e che mi possa aiutare! Cordiali saluti

Risposte:


1

Se vuoi renderlo davvero flessibile, potresti optare per INDIRECT, utilizzato in questo modo:

=INDIRECT("'sheet"&A17&"'!A1")-INDIRECT("'sheet"&B17&"'!A1")

Dove, se inserisci AA17 del sesto foglio e Bin B17 dello stesso foglio, la tua formula confronterà il valore del foglio A A1 con il valore del foglio B A1.

Se cambi A17 in B e B17 in A, cambieranno i valori. Ovviamente puoi mettere C, D o E in quelle due celle.

Se vuoi inserire il nome dell'intero foglio, la formula diventa:

=INDIRECT("'"&A17&"'!A1")-INDIRECT("'"&B17&"'!A1")

E tu metti sheetAe sheetBinvece nelle celle A17 e B17.

Tuttavia , questa flessibilità ha un prezzo, chiamato volatilità; il che significa che queste funzioni verranno ricalcolate anche al più piccolo cambiamento nella cartella di lavoro e se ne hai molte, o hai una cartella di lavoro ingombrante, la differenza è difficile da ignorare.

In questi casi potresti optare per un po 'meno flessibilità, se hai formule specifiche, ad esempio, se puoi avere solo un numero limitato di valutazioni, puoi usare CHOOSEcon un certo numero chiave:

=CHOOSE(A17, sheetA!A1-sheetB!A1, sheetC!A1-sheetD!A1, ... )

E puoi aggiungere altri calcoli. In questo caso, sheetA!A1-sheetB!A1verrà valutato se è presente 1in A17.

sheetC!A1-sheetD!A1 sarà valutato se A17 ha 2. Il prossimo sarà valutato se A17 ne ha 3, ecc.


Sembra promettente! Devo provare le tue soluzioni. Grazie per la tua risposta rapida e completa!
robert,

Ciao Jerry, fa quello che speravo potesse fare. Ma ho un'altra domanda. Volevo copiare la formula in tutte le celle del foglio 6, ma quando lo faccio tirando le celle verso destra o verso il basso, le celle sbagliate vengono cambiate. = INDIRETTO ("'foglio" & A17 & "'! A1") - INDIRETTO ("'foglio" & B17 & "'! A1") diventa = INDIRETTO ("'foglio" & B17 & "'! A1") - INDIRETTO ("'foglio" & C17 & "'! A1"), Qualche modo per cambiarlo, quindi non devo cambiare il manuale di 150 celle?
robert,

(così nel modo in cui l'ho provato, le celle A17 e B17 sono cambiate invece di A1 in B1 o A1 in A2 eccetera.
robert

@ Robert Oh, beh, si può usare CELLse si vuole Excel per riempire l'area correttamente: INDIRECT("'sheet"&A17&"'!"&CELL("address",A1))-INDIRECT("'sheet"&B17&"'!"CELL("address",A1)). La cosa è che CELL("address",A1)restituisce A1 (o in senso stretto $A$1ma non è un problema qui) e poiché è in una funzione, il riferimento cambia di conseguenza.
Jerry,

1
Grazie. Non posso votare te o le tue risposte, perché non ho i diritti. Pitty, ti meriti il ​​mio voto!
robert,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.