Come ottenere i dati da una cella per modificare la funzione di altre celle


0

Ho 10 o più fogli di lavoro, con gli stessi layout, tutti contenenti dati provenienti da diversi giorni di lavoro. Sto cercando di creare un "SimpleSheet" che estrae solo dati specifici da un foglio di un giorno in un layout gradevole. Finora lo sto facendo manualmente:

A1 | ='DaySheet1'.A1
A2 | ='DaySheet1'.A2

Quello che mi piacerebbe fare è modificare le funzioni invece di dove dice DaySheet "tira il foglio che ho definito nella cella SimpleSheet B1"

B1 | *whatever sheet*
A1 | ='B1'.A1
A2 | ='B1'.A2

Risposte:


2

Uso Indirect.

Indirect ti permette di usare una stringa come riferimento a una posizione del foglio di lavoro. Pertanto, se il contenuto della cella A1 è impostato su "DaySheet", puoi utilizzare la formula =Indirect(A1)! B1 e il risultato sarà quello che si trova nella cella B1 nel foglio DaySheet.

Dal pagina di supporto :

È possibile fare riferimento a ciascun attributo del riferimento (nome della cartella di lavoro,   nome del foglio di lavoro e riferimento di cella) utilizzando INDIRECT singolarmente   funzione per creare un riferimento dinamico definito dall'utente con un foglio di lavoro   riferimenti di cella come input.

MODIFICARE: Potrebbe essere necessario menzionare come gestire il riferimento alla cella corrente.

Per eseguire il drill down dal foglio alla cella, puoi utilizzare un riferimento di stringa (ad es. "A1") concatenate d al riferimento indiretto, oppure puoi usare il address funzione per farlo dinamicamente. Di seguito è riportato un esempio di entrambi:

Stringa:

= INDIRETTO (CONCATENA ($ A $ 1, "!", "B1"))

Dinamico:

= INDIRETTO (CONCATENATO ($ A $ 1, "!", INDIRIZZO (ROW (), COLUMN (), 4)))

Il primo è il più semplice in cui non si copia da troppe celle. Più di una manciata, e vorrei andare con la seconda opzione.

Aiuto MS su Indirizzo funzione.


Solo una piccola osservazione: riferimenti ad altre cartelle di lavoro basate su INDIRECT funzionerà solo nel caso in cui la cartella di lavoro sia aperta. Vedi altro: stackoverflow.com/a/14788167/2043977
Peter L.

A1 impostato su 'DaySheet'. B1 = Errore di analisi indiretto (A1). B1 = indiretto ("a1") restituisce 'DaySheet'. B1 = indiretto ("A1")! B1 Errore di analisi. = indiretto ("'DaySheet'! B1") Restituisce la cella corretta. = indiretto ("'DaySheet'")! Errore di analisi B1.
user197060

@ user197060 modificato
mcalex
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.