Joy si è imbattuta in un problema nell’unire insieme parecchie cartelle di lavoro. La maggior parte delle cartelle di lavoro, circa 200, tutte in una singola cartella, contengono ciascuna un singolo foglio di lavoro, ma alcune ne contengono di più. I fogli di lavoro di ciascuna di queste cartelle di lavoro devono essere aggiunti a una singola cartella di lavoro.

Il modo più semplice per eseguire unioni di questa portata, in particolare se devi farlo spesso, è con una macro. La seguente macro visualizza una finestra di dialogo che chiede di selezionare i file da unire. (È possibile selezionare più cartelle di lavoro tenendo premuto il tasto Ctrl mentre si fa clic su ciascuna di esse.) Passa attraverso l’elenco selezionato, aprendole e spostando tutti i fogli di lavoro alla fine della cartella di lavoro con il codice.

Sub CombineWorkbooks()

Dim FilesToOpen     Dim x As Integer     Dim Outwbk As Workbook

Set Outwbk = ActiveWorkbook

On Error GoTo ErrHandler     Application.ScreenUpdating = False

FilesToOpen = Application.GetOpenFilename _       (FileFilter:="Microsoft Excel Files (.xls), .xls", _       MultiSelect:=True, Title:="Files to Merge")



If TypeName(FilesToOpen) = "Boolean" Then         MsgBox "No Files were selected"

GoTo ExitHandler     End If

x = 1     While x <= UBound(FilesToOpen)

Workbooks.Open Filename:=FilesToOpen(x)

Sheets().Move After:=Outwbk.Sheets(Outwbk.Sheets.Count)

x = x + 1     Wend

ExitHandler:

Application.ScreenUpdating = True     Exit Sub

ErrHandler:

MsgBox Err.Description     Resume ExitHandler End Sub

Nel processo di aggiunta dei fogli di lavoro alla fine della cartella di lavoro, Excel aggiungerà automaticamente un (2), (3), ecc. Quando vengono rilevati nomi di fogli di lavoro duplicati. Anche tutte le formule nel libro che fanno riferimento ad altri fogli verranno aggiornate per riflettere i nuovi nomi.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (2409) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: