Como importar rapidamente vários arquivos csv/texto/xml em lote no Excel?
No Excel, você pode ter tentado salvar uma pasta de trabalho como arquivo csv, arquivo de texto ou arquivo xml, mas já tentou importar vários arquivos csv/texto/xml de uma pasta para uma pasta de trabalho ou planilha? Neste artigo, apresento alguns métodos para importá-los rapidamente em lote.
Importar múltiplos arquivos de texto de uma pasta para cada planilha de uma pasta de trabalho com VBA
Para importar arquivos de texto de uma pasta para uma pasta de trabalho, você pode usar o seguinte VBA para lidar rapidamente com isso.
1. Abra uma pasta de trabalho em branco e pressione as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o VBA na janela Módulo.
VBA: Importar todos os arquivos de texto de uma pasta para uma pasta de trabalho
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. Pressione a tecla F5 ou clique no botão Executar para rodar o VBA, e selecione uma pasta da qual deseja importar os arquivos de texto no diálogo que aparece. Veja a captura de tela:
4. E clique em OK, e cada arquivo de texto na pasta selecionada foi importado para uma planilha da pasta de trabalho ativa. Veja a captura de tela:



Desbloqueie a Magia do Excel com o Kutools AI
- Execução Inteligente: Realize operações de células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- Fórmulas Personalizadas: Gere fórmulas sob medida para otimizar seus fluxos de trabalho.
- Codificação VBA: Escreva e implemente código VBA sem esforço.
- Interpretação de Fórmulas: Compreenda fórmulas complexas com facilidade.
- Tradução de Texto: Supere barreiras linguísticas dentro de suas planilhas.
Importar múltiplos arquivos CSV de uma pasta para uma única planilha com VBA
Para importar todos os arquivos CSV de uma pasta para uma única planilha, você pode usar o seguinte código VBA.
1. Ative uma planilha em branco e pressione as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o seguinte VBA na nova janela Módulo.
VBA: Importar arquivos CSV de uma pasta para uma planilha
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. Pressione a tecla F5 ou clique no botão Executar para executar o VBA, e um diálogo aparecerá para selecionar uma pasta da qual deseja importar todos os arquivos CSV. Veja a captura de tela:
4. Clique em OK, e um diálogo aparecerá para lembrá-lo se deseja limpar o conteúdo da planilha ativa antes de importar; aqui eu clico em Sim. Veja a captura de tela:
Depois de clicar em Sim, todos os arquivos CSV na pasta selecionada são importados para a planilha atual, colocando os dados da Coluna A para a direita. Veja a captura de tela:


Dica: Se você quiser posicionar arquivos CSV horizontalmente em uma planilha, pode usar o seguinte 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
Importar múltiplos arquivos XML de uma pasta para uma única planilha com VBA
Se você deseja importar todos os arquivos XML de uma pasta para uma única planilha, pode usar o seguinte código VBA.
1. Selecione uma planilha em branco onde deseja colocar os dados importados e pressione as teclas Alt + F11 para habilitar a janela Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo, cole o código VBA na janela Módulo.
VBA: Importar arquivos XML de uma pasta para uma planilha.
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. Clique no botão Executar ou pressione a tecla F5 para executar o VBA e selecione uma pasta no diálogo que aparece, veja a captura de tela:
4. Clique em OK, e todos os arquivos XML na pasta selecionada são importados para a planilha ativa.
Importar ou combinar múltiplos arquivos XML/CSV em uma planilha ou pasta de trabalho com Kutools para Excel
Se você não está familiarizado com VBA, não se preocupe, aqui apresento uma ferramenta prática – Kutools para Excel para você. Com seu poderoso utilitário Combine, você pode combinar rapidamente múltiplos arquivos XML ou CSV em uma pasta de trabalho ou uma planilha do Excel.
Após instalar o Kutools para Excel, por favor faça o seguinte: (Baixe gratuitamente o Kutools para Excel agora!)
1. Ative o Excel e clique em Kutools Plus > Combine. Veja a captura de tela:
2. E no passo 1 do Combine diálogo, escolha uma opção de separação conforme necessário. Veja a captura de tela:
3. Clique em Próximo para ir ao passo 2 do Combine, clique em Adicionar para adicionar arquivos de várias pastas ou arquivos de uma pasta para a Pasta de Trabalho lista, e também é possível especificar as planilhas que deseja combinar da Planilha lista da seção à direita. Veja a captura de tela:
4. Clique em Próximo para o último passo do Combine, e você pode especificar as opções de combinação.
5. Clique em Concluir, um diálogo aparece para lembrá-lo de selecionar um local para salvar o novo resultado combinado. Veja a captura de tela:
6. Clique em Salvar. Todas as planilhas adicionadas foram combinadas em uma nova planilha única.
Dica: Com Combine, você também pode combinar múltiplos arquivos CSV de várias pastas ou de uma pasta em uma planilha ou pasta de trabalho.
Exportar cada planilha como CSV/texto/PDF para uma pasta com Kutools para Excel
Se você deseja exportar cada planilha como arquivo CSV/texto/PDF para uma pasta, o utilitário Dividir Pasta de Trabalho do Kutools para Excel pode ajudá-lo.
Após baixar e instalar gratuitamente o Kutools para Excel, por favor faça o seguinte:
1. Ative a pasta de trabalho que deseja exportar suas planilhas e clique em Kutools Plus > Pasta de Trabalho > Dividir Pasta de Trabalho. Veja a captura de tela:
2. No diálogo Dividir Pasta de Trabalho, você pode marcar os nomes das planilhas que precisa exportar; por padrão, todas as planilhas estão marcadas, e marque Especificar formato de salvamento e selecione o formato de arquivo que deseja salvar a partir da lista suspensa abaixo. Veja a captura de tela:
3. Clique em Dividir e selecione uma pasta para salvar os arquivos divididos no diálogo Procurar Pasta, veja a captura de tela:
4. Clique em OK, agora todas as planilhas marcadas são exportadas como novo formato de arquivo na pasta selecionada.
Artigos Relacionados:
- Como converter hiperlink em texto simples no Excel?
- Como converter número decimal em binário/octal/hexadecimal ou vice-versa no Excel?
- Como inserir taxa de câmbio ao vivo no Excel?
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!