
Ao trabalhar com relatórios exportados de diferentes sistemas, é comum acabar com dezenas de arquivos CSV. Por exemplo, cada departamento, loja ou mês pode gerar seu próprio relatório CSV. Embora isso torne a coleta de dados simples, gerenciar um grande número de arquivos separados rapidamente se torna inconveniente.
Uma solução prática é combinar todos os arquivos CSV em uma única pasta de trabalho do Excel, mantendo cada CSV como uma planilha separada. Isso preserva a estrutura original do arquivo, facilita a navegação e permite que você compartilhe uma única pasta de trabalho em vez de vários arquivos individuais.
Neste artigo, apresentaremos três métodos práticos — desde uma abordagem manual simples até a automação do Excel com VBA e uma solução totalmente programática em Python.
Métodos abordados:
- Método 1. Copiar e colar arquivos CSV em planilhas separadas
- Método 2. Usar uma macro VBA para importar vários arquivos CSV
- Método 3. Mesclar vários arquivos CSV em Python usando Spire.XLS
Método 1. Copiar e colar arquivos CSV em planilhas separadas
Se você tiver apenas alguns arquivos CSV para mesclar, a solução mais simples é copiar seus conteúdos para diferentes planilhas manualmente.
Um detalhe importante é que você deve abrir cada arquivo CSV com o Microsoft Excel em vez de um editor de texto como o Bloco de Notas. Quando um CSV é aberto no Excel, suas linhas e colunas são analisadas corretamente com base no delimitador. Se você copiar o texto diretamente do Bloco de Notas, o Excel poderá colar tudo em uma única coluna em vez de separar os valores automaticamente.

Passos
- Abra o Microsoft Excel e crie uma nova pasta de trabalho.
- Abra o primeiro arquivo CSV usando o Excel.
- Selecione todos os dados (Ctrl + A) e copie-os (Ctrl + C).
- Retorne à nova pasta de trabalho e cole os dados na primeira planilha.
- Renomeie a planilha, se necessário.
- Repita o processo para cada arquivo CSV restante, criando uma nova planilha a cada vez.
- Salve a pasta de trabalho como um arquivo .xlsx.
Prós
- Não requer programação.
- Funciona em qualquer instalação do Excel.
- Preserva um CSV por planilha.
- Ideal para tarefas ocasionais envolvendo apenas alguns arquivos.
Contras
- Demorado ao processar muitos arquivos.
- Totalmente manual.
- Fácil de cometer erros ao lidar com dezenas de arquivos CSV.
Método 2. Usar uma macro VBA para importar vários arquivos CSV
Se você realiza essa tarefa frequentemente dentro do Excel, uma macro VBA pode automatizar todo o processo. A macro verifica uma pasta, abre cada arquivo CSV, copia sua planilha para a pasta de trabalho atual e nomeia a planilha com o nome do arquivo CSV.

Passo 1. Criar uma pasta de trabalho em branco
Abra o Excel e crie uma nova pasta de trabalho. Esta pasta de trabalho será o destino que armazenará todas as planilhas importadas.
Passo 2. Abrir o Editor VBA
Pressione Alt + F11 para abrir o Editor do Visual Basic.
Escolha Inserir > Módulo e cole o código a seguir no novo módulo.
Sub MergeCSVFilesToSheets()
Dim folderPath As String
Dim fileName As String
Dim wbCSV As Workbook
Dim ws As Worksheet
Dim targetWb As Workbook
Dim sheetName As String
Set targetWb = ThisWorkbook
folderPath = InputBox("Digite o caminho da pasta contendo os arquivos CSV:")
If Right(folderPath, 1) <> "\" Then
folderPath = folderPath & "\"
End If
fileName = Dir(folderPath & "*.csv")
Application.ScreenUpdating = False
Do While fileName <> ""
Workbooks.Open folderPath & fileName
Set wbCSV = ActiveWorkbook
sheetName = Left(fileName, InStrRev(fileName, ".") - 1)
wbCSV.Worksheets(1).Copy After:=targetWb.Sheets(targetWb.Sheets.Count)
Set ws = targetWb.Sheets(targetWb.Sheets.Count)
On Error Resume Next
ws.Name = Left(sheetName, 31)
On Error GoTo 0
wbCSV.Close SaveChanges:=False
fileName = Dir
Loop
Application.ScreenUpdating = True
MsgBox "Arquivos CSV foram mesclados com sucesso."
End Sub
Passo 3. Executar a macro
Pressione F5, insira a pasta que contém seus arquivos CSV e a macro importará automaticamente cada CSV para sua própria planilha.
Prós
- Muito mais rápido do que copiar manualmente.
- Executado inteiramente dentro do Microsoft Excel.
- Cria automaticamente uma planilha para cada arquivo CSV.
- Adequado para usuários que trabalham regularmente com o Excel.
Contras
- Requer pastas de trabalho habilitadas para macro.
- Os usuários devem habilitar macros VBA.
- Menos adequado para automação autônoma ou no lado do servidor.
Método 3. Mesclar vários arquivos CSV em Python usando Spire.XLS
Para fluxos de trabalho recorrentes, tarefas agendadas ou aplicações empresariais, a automação programática é frequentemente a solução mais eficiente.
Muitos desenvolvedores pensam imediatamente no Pandas para processamento de CSV. O Pandas é uma excelente biblioteca para ler, analisar e transformar dados tabulares. No entanto, seu foco principal é a análise de dados, não a geração de documentos.
Se o seu fluxo de trabalho vai além da simples importação de arquivos CSV — por exemplo, formatar planilhas, aplicar estilos, inserir gráficos, proteger pastas de trabalho ou exportar a pasta de trabalho final para PDF — uma biblioteca de planilhas como o Free Spire.XLS for Python oferece uma solução mais completa.
Primeiro, instale a biblioteca:
pip install Spire.XLS
Em seguida, use o código a seguir para mesclar cada arquivo CSV em uma pasta em uma única pasta de trabalho do Excel, com cada CSV se tornando uma planilha separada.
import os
from spire.xls import Workbook, WorksheetCopyType, FileFormat
input_folder = "input"
output_folder = "output"
# Criar a pasta de trabalho de destino
merged_workbook = Workbook()
merged_workbook.Worksheets.Clear()
# Processar cada arquivo CSV
for csv_file in os.listdir(input_folder):
if csv_file.endswith(".csv"):
input_path = os.path.join(input_folder, csv_file)
workbook = Workbook()
workbook.LoadFromFile(input_path, ",", 1, 1)
sheet = workbook.Worksheets[0]
merged_workbook.Worksheets.AddCopy(
sheet,
WorksheetCopyType.CopyAll
)
merged_workbook.SaveToFile(
os.path.join(output_folder, "Merged.xlsx"),
FileFormat.Version2013
)
Saída:

Comparado com métodos manuais ou VBA, esta abordagem é muito mais fácil de integrar em fluxos de trabalho automatizados. Após gerar a pasta de trabalho, você pode continuar processando-a com o Spire.XLS — por exemplo:
- Aplicar fontes, cores, bordas e formatos numéricos.
- Congelar painéis ou ajustar larguras de coluna automaticamente.
- Criar gráficos e tabelas dinâmicas.
- Proteger planilhas ou a pasta de trabalho.
- Exportar a pasta de trabalho concluída para PDF ou outros formatos.
Essas capacidades a tornam adequada não apenas para mesclagem de CSV, mas também para pipelines de geração de relatórios de ponta a ponta.
Comparação dos três métodos
| Método | Programação necessária | Processamento em lote | Melhor para |
|---|---|---|---|
| Copiar e colar | Não | Limitado | Tarefas únicas com apenas alguns arquivos CSV |
| Macro VBA | VBA básico | Sim | Usuários de Excel que importam arquivos CSV regularmente |
| Python + Free Spire.XLS | Python | Excelente | Fluxos de trabalho automatizados, aplicações empresariais e processamento em lote |
Conclusão
O melhor método depende da frequência com que você precisa realizar a tarefa.
Se você só precisa combinar alguns arquivos CSV ocasionalmente, copiar e colar os dados manualmente em planilhas separadas é a solução mais rápida.
Se você trabalha principalmente no Excel e realiza essa tarefa regularmente, uma macro VBA pode automatizar o processo com esforço mínimo.
Para desenvolvedores que criam fluxos de trabalho repetíveis ou integram o processamento de CSV em aplicações, o Python com Spire.XLS oferece a maior flexibilidade. Além de mesclar arquivos CSV, ele permite manipulação avançada de planilhas e geração de documentos, tornando-o adequado para uma ampla gama de cenários de automação.
Perguntas frequentes (FAQs)
Posso mesclar centenas de arquivos CSV em uma única pasta de trabalho do Excel?
Sim. O VBA pode lidar com muitos arquivos, mas para lotes muito grandes ou fluxos de trabalho automatizados, uma solução em Python é geralmente mais confiável e escalável.
Cada arquivo CSV se tornará sua própria planilha?
Sim. Todos os três métodos descritos neste artigo preservam cada CSV como uma planilha separada, em vez de combinar todos os dados em uma única planilha.
Os nomes das planilhas podem ser baseados nos nomes dos arquivos CSV?
Sim. Tanto a macro VBA quanto o exemplo em Python usam automaticamente o nome do arquivo CSV (sem a extensão) como o nome da planilha.
E se meus arquivos CSV usarem UTF-8 ou outras codificações?
A maioria dos arquivos CSV pode ser importada sem problemas. Se seus arquivos usarem uma codificação ou delimitador diferente, ajuste as configurações de importação adequadamente antes de processar.
Posso continuar editando a pasta de trabalho após mesclar os arquivos CSV?
Com certeza. Após a criação da pasta de trabalho, você pode formatar planilhas, inserir gráficos, adicionar fórmulas, proteger a pasta de trabalho ou exportá-la para PDF como qualquer outro arquivo do Excel.