Scarica la cartella di lavoro di esempio
Questo tutorial mostra come elencare i nomi dei fogli di una cartella di lavoro con una formula in Excel.
Elenca i nomi dei fogli utilizzando l'intervallo e la formula denominati
Non esiste una funzione integrata in Excel in grado di elencare tutti i fogli di lavoro in una cartella di lavoro. Tuttavia, ciò può essere ottenuto utilizzando una combinazione di diverse funzioni.
Per elencare i nomi dei fogli in una cartella di lavoro, faremo quanto segue:
- Crea un intervallo denominato "Fogli di lavoro"
- Usa una formula per elencare tutti i nomi dei fogli.
Crea intervallo di nomi per i nomi dei fogli
Per creare un intervallo con nome per i nomi dei fogli, nel Barra multifunzione di Excel: Formule > Gestione nomi > Nuovo
Digita "Fogli di lavoro" nella casella del nome:
Nella sezione "Fa riferimento a" della finestra di dialogo, dovremo scrivere la formula
1 | =GET.WORKBOOK(1) & T(ORA())" |
Questa formula memorizza i nomi di tutti i fogli (come una matrice in questo formato: "[workbook.xlsm].Panoramica") nella cartella di lavoro nell'intervallo denominato "Fogli di lavoro".
La funzione "GET.WORKBOOK" è una funzione macro, quindi la cartella di lavoro deve essere salvata come cartella di lavoro abilitata per le macro (formato file: .xlsm) affinché i nomi dei fogli vengano aggiornati ogni volta che viene aperta la cartella di lavoro.
Note: Quando si riempie la finestra di dialogo Modifica nome, la cartella di lavoro deve essere selezionata come ambito dell'intervallo di nomi.
Utilizzo della formula per elencare i nomi dei fogli
Ora usiamo una formula per elencare i nomi dei fogli. Avremo bisogno delle funzioni INDEX, MID, FIND e ROWS:
1 | =INDICE(MID(Fogli di lavoro, TROVA("]",Fogli di lavoro)+1,255),RIGHE($B$5:B5)) |
- La formula sopra prende l'array "Fogli di lavoro" e visualizza il nome di ogni foglio in base alla sua posizione.
- Le funzioni MID e FIND estraggono i nomi dei fogli dall'array (rimuovendo il nome della cartella di lavoro).
- Quindi le funzioni INDEX e ROW visualizzano ogni valore in quella matrice.
- Qui, "Panoramica" è il primo foglio nelle cartelle di lavoro e "Pulizia" è l'ultimo.
Per maggiori dettagli su come funzionano le funzioni MID e FIND per ottenere i nomi dei fogli, vedere il collegamento get-sheet-name.
Metodo alternativo
Hai anche la possibilità di creare l'elenco dei nomi dei fogli all'interno del Gestore nomi. Invece di
1 | =OTTIENI.CARBELLA DI LAVORO(1) & T(ORA()) |
imposta il campo "Riferito a" su
1 | = SOSTITUISCI (OTTIENI.CARB. DI LAVORO (1), 1, TROVA("]", OTTIENI.CARBELLA DI LAVORO (1)),"") |
Ora non c'è bisogno di MID, FIND e ROWS nella tua formula. Il tuo intervallo denominato è già composto solo da nomi di fogli.
Usa questa formula INDICE più semplice per elencare i fogli:
1 | =INDICE(NomeFoglio,B3) |