Skip to main content

Come importare rapidamente più file csv/testo/xml in Excel?

Author: Sun Last Modified: 2025-08-06

In Excel, potresti aver provato a salvare una cartella di lavoro come file csv, file di testo o file xml, ma hai mai tentato di importare più file csv/testo/xml da una cartella in una cartella di lavoro o in un foglio di lavoro? In questo articolo, ti presento alcuni metodi per importarli rapidamente in batch.


Importa più file di testo da una cartella in ogni foglio di lavoro di una cartella di lavoro con VBA

Per importare file di testo da una cartella in una cartella di lavoro, puoi utilizzare il seguente codice VBA per gestirlo rapidamente.

1. Apri una cartella di lavoro vuota e premi i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo e incolla il codice VBA nella finestra del Modulo.

VBA: Importa tutti i file di testo da una cartella in una cartella di lavoro

Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\*.txt")
    Do While xFile <> ""
        xCount = xCount + 1
        Sheets(xCount).Select
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
          & xStrPath & "\" & xFile, Destination:=Range("A1"))
            .Name = "a" & xCount
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = 437
            .TextFileStartRow = 1
            .TextFileParseType = xlDelimited
            .TextFileTextQualifier = xlTextQualifierDoubleQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = False
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileOtherDelimiter = "|"
            .TextFileColumnDataTypes = Array(1, 1, 1)
            .TextFileTrailingMinusNumbers = True
            .Refresh BackgroundQuery:=False
            xFile = Dir
        End With
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files txt", , "Kutools for Excel"
End Sub

3. Premi il tasto F5 o clicca sul pulsante Esegui per eseguire il codice VBA e seleziona una cartella da cui desideri importare i file di testo nella finestra di dialogo che appare. Vedi screenshot:

a screenshot of seleting a folder from which you want to import txt files

4. Clicca su OK e ogni file di testo nella cartella selezionata verrà importato in un foglio di lavoro della cartella di lavoro attiva. Vedi screenshot:

a screenshot showing that each text file in the selected folder has been imported into different worksheets of the current workbooka screenshot showing that each text file in the selected folder has been imported into different worksheets of the current workbook 2
a screenshot of kutools for excel ai

Sblocca la Magia di Excel con Kutools AI

  • Esecuzione Intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici — tutto guidato da semplici comandi.
  • Formule Personalizzate: Genera formule su misura per ottimizzare i tuoi flussi di lavoro.
  • Codifica VBA: Scrivi e implementa codice VBA senza sforzo.
  • Interpretazione delle Formule: Comprendi facilmente formule complesse.
  • Traduzione del Testo: Superare le barriere linguistiche all'interno dei tuoi fogli di calcolo.
Potenzia le tue capacità di Excel con strumenti alimentati dall'IA. Scarica Ora ed esperisci un'efficienza mai vista prima!

Importa più file csv da una cartella in un singolo foglio con VBA

Per importare tutti i file csv da una cartella in un singolo foglio, puoi utilizzare il seguente codice VBA.

1. Apri un foglio di lavoro vuoto e premi i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo e incolla il seguente codice VBA nella nuova finestra del Modulo.

VBA: Importa file csv da una cartella in un foglio di lavoro

Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
    Dim xSht  As Worksheet
    Dim xWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Set xSht = ThisWorkbook.ActiveSheet
    If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\" & "*.csv")
    Do While xFile <> ""
        Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
        Columns(1).Insert xlShiftToRight
        Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
        ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
        xWb.Close False
        xFile = Dir
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files csv", , "Kutools for Excel"
End Sub

3. Premi il tasto F5 o clicca sul pulsante Esegui per eseguire il codice VBA e si aprirà una finestra di dialogo per selezionare una cartella da cui vuoi importare tutti i file csv. Vedi screenshot:

a screenshot of seleting a folder from which you want to import csv files into a single worksheet

4. Clicca su OK e apparirà una finestra di dialogo per chiederti se vuoi cancellare il contenuto del foglio di lavoro attivo prima dell'importazione; qui clicco su . Vedi screenshot:

a screenshot of a prompt box reminding that whether you want to clear the existing sheet before importing csv files

Dopo aver cliccato su , tutti i file csv nella cartella selezionata vengono importati nel foglio corrente, posizionando i dati dalla Colonna A verso destra. Vedi screenshot:

a screenshot showing that all csv files in the selcted folder are imported into the current worksheeta screenshot showing that all csv files in the selcted folder are imported into the current worksheet 2

Consiglio: Se desideri posizionare i file csv orizzontalmente in un foglio di lavoro, puoi utilizzare il seguente codice VBA.

Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
    Dim xSht  As Worksheet
    Dim xWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Set xSht = ThisWorkbook.ActiveSheet
    If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
        xSht.UsedRange.Clear
        xCount = 1
    Else
        xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
    End If
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\" & "*.csv")
    Do While xFile <> ""
        Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
        Rows(1).Insert xlShiftDown
        Range("A1") = ActiveSheet.Name
        ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
        xWb.Close False
        xFile = Dir
        xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files csv", , "Kutools for Excel"
End Sub 

a screenshot of importing csv files horizontally in a worksheet


Importa più file xml da una cartella in un singolo foglio con VBA

Se vuoi importare tutti i file XML da una cartella in un singolo foglio, puoi utilizzare il seguente codice VBA.

1. Seleziona un foglio vuoto in cui desideri inserire i dati importati e premi i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.

2. Clicca su Inserisci > Modulo, incolla il codice VBA nella finestra del Modulo.

VBA: Importa file XML da una cartella in un foglio di lavoro.

Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
    Dim xWb As Workbook
    Dim xSWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Application.ScreenUpdating = False
    Set xSWb = ThisWorkbook
    xCount = 1
    xFile = Dir(xStrPath & "\*.xml")
    Do While xFile <> ""
        Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
        xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
        xWb.Close False
        xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
        xFile = Dir()
    Loop
    Application.ScreenUpdating = True
    xSWb.Save
    Exit Sub
ErrHandler:
    MsgBox "no files xml", , "Kutools for Excel"
End Sub

3. Clicca sul pulsante Esegui o premi il tasto F5 per eseguire il codice VBA e seleziona una cartella nella finestra di dialogo che appare, vedi screenshot:

a screenshot of seleting a folder from which you want to import xml files into a single worksheet

4. Clicca su OK e tutti i file XML nella cartella selezionata vengono importati nel foglio attivo.


Importa o combina più file xml/csv in un foglio o in una cartella di lavoro con Kutools per Excel

Se non sei familiare con VBA, non preoccuparti, ti presento uno strumento utile – Kutools per Excel. Con la sua potente funzione Combina, puoi combinare rapidamente più file xml o csv in una cartella di lavoro o in un foglio di Excel.

Dopo aver installato Kutools per Excel, procedi come segue: (Scarica gratuitamente Kutools per Excel ora!)

1. Attiva Excel e clicca su Kutools Plus > Combina. Vedi screenshot:
a screenshot of enabling the Combine feature of Kutools for Excel

2. Nella fase 1 di Combina finestra di dialogo, scegli un'opzione di separazione come necessario. Vedi screenshot:
a screenshot of selecting one operation as you need in the Combine Worksheets wizard

3. Clicca su Avanti per andare alla fase 2 di Combina, clicca su Aggiungi per aggiungere file da varie cartelle o file da una cartella alla lista Cartella di lavoro e puoi anche specificare i fogli che desideri combinare dalla lista Foglio di lavoro nella sezione a destra. Vedi screenshot:
a screenshot of adding files or folders and specifying the sheets you want to combine

4. Clicca su Avanti per arrivare all'ultimo passaggio di Combina, e puoi specificare le opzioni di combinazione.
a screenshot of specifying the combine options

5. Clicca su Fine, apparirà una finestra di dialogo per ricordarti di selezionare una posizione in cui salvare il nuovo risultato combinato. Vedi screenshot:
a screenshot of selecting a location to save the new combined file

6. Clicca su Salva. Tutti i fogli aggiunti sono stati combinati in un nuovo foglio singolo.
a screenshot showing all adding sheets have been combined into a new single worksheet

Consiglio: Con Combina, puoi anche combinare più file CSV da più cartelle o da una singola cartella in un foglio o in una cartella di lavoro.


Esporta ogni foglio come csv/testo/pdf in una cartella con Kutools per Excel

Se vuoi esportare ogni foglio come file csv/testo/pdf in una cartella, l'utilità Dividi Cartella di Lavoro di Kutools per Excel può aiutarti.

Dopo aver scaricato e installato gratuitamente Kutools per Excel, procedi come segue:

1. Abilita la cartella di lavoro che desideri esportare e clicca su Kutools Plus > Cartella di Lavoro > Dividi Cartella di Lavoro. Vedi screenshot:

a screenshot of enabling the Split Workbook feature

2. Nella finestra di dialogo Dividi Cartella di Lavoro, puoi selezionare i nomi dei fogli che desideri esportare; per impostazione predefinita, tutti i fogli sono selezionati. Spunta Specifica formato di salvataggio e seleziona il formato di file che desideri salvare dal menu a discesa sottostante. Vedi screenshot:

a screenshot of checking the sheet names you will export and specifying a save format

3. Clicca su Dividi e seleziona una cartella in cui salvare i file divisi nella finestra di dialogo Sfoglia Cartella, vedi screenshot:

a screenshot of selecting a destination folder to save the exported files

4. Clicca su OK, ora tutti i fogli selezionati sono esportati come nuovi file nel formato selezionato nella cartella scelta.


Articoli correlati:


I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e genera grafici | Richiama Funzioni avanzate
Funzionalità popolari: Trova, evidenzia o identifica duplicati | Elimina righe vuote | Combina colonne o celle senza perdere dati | Arrotonda
Super RICERCA.VERT: Ricerca con criteri multipli    Ricerca valori multipli  |   Ricerca su più fogli   |   Corrispondenza approssimativa ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa a selezione multipla….
Gestione colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia lo stato di visibilità delle colonne nascoste | Confronta intervalli e colonne...
Funzionalità in evidenza: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestione Cartella di lavoro & Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email da elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
I15 migliori kit di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule utili (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci immagine dal percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti per unire & dividere (Unione avanzata righe, Dividi celle, ...) | ...e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre!

Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice

  • Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
  • Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!