Hai diversi fogli Excel o tabelle Excel che vorresti unire tra di loro per creare un unico file o un unica tabella? Questo lavoro potrebbe risultare più complesso di quanto si pensi, specialmente se i fogli da unire sono tanti. In questo articolo vedremo però diversi metodi per unire più fogli Excel e sicuramente troverai quello più adatto alle tue esigenze di lavoro.
Metodo #1. Copia dei dati
Questo è il metodo forse più ovvio e banale che però non sempre è il migliore. Si tratta di selezionare l’intervallo delle celle di origine, copiarle e incollarle nel foglio di lavoro principale o nel nuovo file excel che stiamo creando. Lo svantaggio? Beh, questo metodo è molto fastidioso se devi gestire più fogli di lavoro o più intervalli di celle. Però se hai solo pochi dati da gestire, questo metodo potrebbe andare bene.
Metodo #2. Utilizzo del programma Merge Excel
Se hai tanti file excel da unire, o tanti fogli excel (sheets) da combinare tra di loro, allora la soluzione che proponiamo è quella di usare il programma Merge Excel. Questo programma (compatibile con computer Windows) è in grado di unire più fogli excel in un nuovo foglio oppure unire interi file excel in un unico file excel completo. Questo tool supporta anche l’importazione di più file CSV, file di testo, file DBF per creare in output un unico file MS Excel. Ecco i link da cui poter scaricare la versione demo gratuita del programma:
Una volta scaricato e installato Merge Excel sul tuo PC, vedrai una schermata iniziale come questa:
Il programma si aprirà in lingua italiana, quindi risulterà davvero semplice da usare. Ecco i passaggi principali da seguire per per unire più fogli Excel e creare un unico foglio di lavoro
Passo 1: Carica i file Excel (contenenti i fogli da unire) cliccando in alto a sinistra sul pulsante col simbolo +. In alternativa puoi anche trascinare i file dal computer all’interno del programma.
Passo 2: Seleziona il file Excel e una volta selezionato potrai decidere (dalla sezione in basso al programma) il tipo di combinazione da fare (file, fogli di lavoro, file e fogli, righe, colonne).
Passo 3: Seleziona i fogli Excel (sheets) che vuoi unire (facendo doppio click o cliccando sulla freccia verso destra) e decidi se unirli in un nuovo foglio o in un nuovo file Excel (in basso a sinistra)
Passo 4: Clicca in alto sul bottone Inizia a Unire in basso a destra per unire i fogli Excel
Tutto qui!
Metodo #3. Utilizza formula “Indiretto”
Questo metodo ha lo svantaggio di essere po’ più complicato. Funziona se hai i tuoi file in ordine e vuoi solo importare alcuni valori. Con la formula INDIRETTO i file originali rimangono tali e la formula INDIRETTO cerca solo i valori all’interno di questi file. Se elimini i file, riceverai errore #REF!.
Con la formula INDIRETTO è possibile collegarsi ad altri file. Condizione necessaria: il file sorgente deve essere aperto in background. Nell’immagine sopra a destra abbiamo inserito ad esempio il file originale, sul lato sinistro invece l’immagine del file excel in cui viene applicata la formula “Indiretto” con la cartella di lavoro principale. La formula INDIRETTO ha un solo argomento ossia il collegamento a un’altra cella che può anche essere localizzata in un’altra cartella di lavoro.
Metodo #4: Unisci fogli Excel con una macro VBA
Non hai paura di usare una semplice macro VBA? Allora ecco come fare.
- Vai nel menu Sviluppatore. Se non riesci a vedere tale voce nel menu di Excel fai clic col tasto destro del mouse sul menu e clicca su “Personalizza il menu…”. Sul lato destro impostare il segno di spunta su “Sviluppatore“.
- Fai clic su Visual Basic sul lato sinistro della barra degli strumenti dello sviluppatore
- Fai clic con il tasto destro sul nome della cartella di lavoro e fai clic su Inserisci -> Modulo
- Copia e incolla il seguente codice nel modulo VBA. Posiziona il cursore all’interno del codice e fai clic su start (il triangolo verde) in alto. Tutto qui.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
Sub mergeFiles()
‘Merges all files in a folder to a main file.
‘Define variables:
Dim numberOfFilesChosen, i As Integer
Dim tempFileDialog As fileDialog
Dim mainWorkbook, sourceWorkbook As Workbook
Dim tempWorkSheet As Worksheet
Set mainWorkbook = Application.ActiveWorkbook
Set tempFileDialog = Application.fileDialog(msoFileDialogFilePicker)
‘Allow the user to select multiple workbooks
tempFileDialog.AllowMultiSelect = True
numberOfFilesChosen = tempFileDialog.Show
‘Loop through all selected workbooks
For i = 1 To tempFileDialog.SelectedItems.Count
‘Open each workbook
Workbooks.Open tempFileDialog.SelectedItems(i)
Set sourceWorkbook = ActiveWorkbook
‘Copy each worksheet to the end of the main workbook
For Each tempWorkSheet In sourceWorkbook.Worksheets
tempWorkSheet.Copy after:=mainWorkbook.Sheets(mainWorkbook.Worksheets.Count)
Next tempWorkSheet
‘Close the source workbook
sourceWorkbook.Close
Next i
End Sub
|
Altri codici di macro VBA utili per unire più fogli excel in un unico foglio sono presenti in questo post del forum di ExcelVBA.it

GloboSoft è una software house italiana che progetta e sviluppa software per la gestione dei file multimediali, dispositivi mobili e per la comunicazione digitale su diverse piattaforme.
Da oltre 10 anni il team di GloboSoft aggiorna il blog Softstore.it focalizzandosi sulla recensione dei migliori software per PC e Mac in ambito video, audio, phone manager e recupero dati.
scusa con cosa sostituisco gli apici?
Grazie mille !!!!!
Risolto, funziona sostituendo gli apici 🙂
SCUSA HO LO STESSO PROBLEMA. COME HAI SOSTITUITO GLI APICI?
Funziona benissimo.
Non funziona , si blocca alla prima riga.
prova a sostituire gli apici sui commenti