Como importar rapidamente vários ficheiros CSV, texto ou XML em lote no Excel?
No Excel, poderá ter guardado uma pasta de trabalho como ficheiro CSV, ficheiro de texto ou ficheiro XML, mas já alguma vez tentou importar vários ficheiros CSV, de texto ou XML de uma pasta diretamente para uma pasta de trabalho ou folha de cálculo? Neste artigo, apresentamos alguns métodos para os importar rapidamente em lote.
Importar múltiplos Arquivo de Texto de uma pasta para folhas de cálculo individuais de uma pasta de trabalho com VBA
Para importar um ficheiro de texto de uma pasta para um livro do Excel, pode utilizar o código VBA abaixo e fazê-lo rapidamente.
1. Abra uma pasta de trabalho em branco e prima as teclas Alt + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o código VBA na janela do Módulo.
VBA: Importar todos os Arquivo 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. Prima a tecla F5 ou clique no botão Executar para executar o código VBA e, na caixa de diálogo que surge, selecione a pasta «Selecionar uma pasta da qual pretende importar os Arquivo de Texto». Veja a imagem:

4. Em seguida, clique em OK e cada arquivo de texto na pasta selecionada será importado para uma folha de cálculo da workbook atual. Veja a imagem:



Desbloqueie a Magia do Excel com KUTOOLS AI
- Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
- Programação VBA: Escreva e implemente código VBA com facilidade.
- Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
- Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
Importar vários ficheiros csv de uma pasta para uma única folha com VBA
Para importar todos os ficheiros CSV de uma pasta para uma única folha, utilize o código VBA abaixo.
1. Abra uma planilha em branco e prima as teclas Alt + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o código VBA abaixo na nova janela do Módulo.
VBA: Importar ficheiros csv de uma pasta para uma única folha de cálculo
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. Prima a tecla F5 ou clique no botão Executar para executar o código VBA. Surge, então, uma caixa de diálogo para selecionar a pasta: escolha a pasta da qual pretende importar todos os ficheiros CSV. Veja a imagem:

4. Clique em OK e surge uma caixa de diálogo a perguntar se pretende limpar o conteúdo da folha ativa antes da importação; aqui, cliquei em Sim. Veja a imagem:

Após clicar em Sim, todos os ficheiros CSV na pasta selecionada são importados para a folha atual, com os dados inseridos a partir da coluna A e seguindo para a direita. Veja a imagem:


Dica: Se pretender colocar os ficheiros CSV horizontalmente numa folha de cálculo, pode utilizar o código VBA abaixo.
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 vários ficheiros xml de uma pasta para uma única folha com VBA
Se pretender importar todos os ficheiros XML de uma pasta para uma única folha, pode utilizar o código VBA abaixo.
1. Selecione uma folha em branco onde pretende colocar os dados importados e prima as teclas Alt + F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Clique em Inserir > Módulo e cole o código VBA na janela do Módulo.
VBA: Importe ficheiros XML de uma pasta diretamente para uma folha de cálculo.
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 prima a tecla F5 para executar o código VBA e, na caixa de diálogo que surge, selecione a pasta «Selecionar uma pasta». Veja a imagem:

4. Clique em OK e todos os ficheiros XML na pasta selecionada serão importados para a Planilha Atual.
Importar ou combinar vários ficheiros xml/csv numa folha ou numa pasta de trabalho com Kutools para Excel
Se não está familiarizado com VBA, não se preocupe: apresentamos-lhe uma ferramenta prática – Kutools para Excel. Graças à sua poderosa funcionalidade Combinar, pode unir rapidamente vários ficheiros XML ou CSV numa única pasta de trabalho ou numa única folha do Excel.
Após instalar o Kutools para Excel, siga os passos abaixo:(Transferência gratuita do Kutools para Excel já!)
1. Ative o Excel e clique em KUTOOLS PLUS > Combinar. Veja a imagem:
2. Na etapa 1 da caixa de diálogo Combinar, escolha uma das opções de separação conforme necessário. Veja a imagem:
3. Clique em Seguinte para avançar para a etapa 2 da caixa de diálogo Combinar. Depois, clique em Adicionar para incluir pastas ou ficheiros de uma pasta na lista de Pastas de Trabalho. Pode ainda especificar as folhas que pretende combinar na lista de Folhas de Cálculo, na secção direita. Veja a imagem:
4. Clique em Seguinteaté à etapa Última da caixa de diálogo Combinar, onde pode especificar as opções de combinação.
5. Clique em Concluir e surge uma caixa de diálogo a pedir-lhe que selecione uma localização para guardar o novo resultado combinado. Veja a imagem:
6. Clique em Guardar. Todas as folhas adicionadas foram combinadas numa única folha.
Dica: Com a funcionalidade Combinar, também pode unir vários ficheiros CSV de várias pastas ou de uma única pasta numa única folha ou livro.
Exportar cada folha como csv/texto/pdf para uma pasta com Kutools para Excel
Se pretender exportar cada folha como ficheiros CSV, de texto ou PDF para uma pasta, a funcionalidade Kutools para Excel’s Separar Livro pode ajudá-lo.
Após transferir e instalar gratuitamenteKutools para Excel, siga os passos abaixo:
1. Abra a pasta de trabalho cujas folhas pretende exportar e clique em KUTOOLS PLUS > Pasta de Trabalho > Separar Livro. Veja a imagem:

2. Na caixa de diálogo Separar Livro, pode selecionar os nomes das folhas que pretende exportar; por predefinição, todas as folhas estão selecionadas. Marque também a opção Especificar formato de gravação e escolha o tipo de ficheiro pretendido na lista pendente abaixo. Veja a imagem:

3. Clique em Dividir e indique a pasta onde pretende guardar os ficheiros divididos na caixa de diálogo Procurar Pasta. Veja a imagem:

4. Clique em OK e todas as folhas selecionadas serão exportadas como novos ficheiros do tipo escolhido na pasta indicada.
Artigos Relacionados:
- Como converter uma hiperligação em texto simples no Excel?
- Como converter um número decimal em binário, octal ou hexadecimal — ou vice-versa — no Excel?
- Como inserir uma taxa de câmbio em tempo real no Excel?
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos