A resposta curta
Um arquivo CSV é texto simples com um registro por linha, então dividir parece tão fácil quanto cortar o texto a cada poucos milhares de linhas. Dois detalhes tornam isso arriscado: a linha de cabeçalho existe só uma vez, no topo, então todas as partes depois da primeira ficariam sem nomes de coluna, e um valor entre aspas pode conter quebras de linha, o que faz um corte às cegas partir um registro ao meio. Um bom divisor de CSV lê o arquivo registro por registro, copia o cabeçalho em cada parte e só corta entre registros completos.
Com a ferramenta abaixo, solte o CSV na página, deixe Dividir por em Quantidade de linhas, informe quantas linhas quer por arquivo e aguarde um instante. Cada parte aparece na lista com o próprio botão de download, e Baixar tudo em ZIP salva todas juntas. Nada é enviado: o arquivo é lido no seu navegador, o que também mantém os dados de clientes e pedidos em sigilo.
Experimente aqui: Dividir CSV
Abrir a página completa da ferramentaPor que dividir um CSV
A maioria das divisões é imposta por um limite em outro lugar. Telas de importação de lojas virtuais, marketplaces, ferramentas de e-mail marketing e CRMs costumam aceitar só uma certa quantidade de linhas ou de megabytes por envio. O Excel mostra no máximo 1.048.576 linhas por planilha e fica lento muito antes disso, e o Google Planilhas tem um limite de células para a planilha inteira. Anexos de e-mail costumam ficar limitados a 20 ou 25 MB.
Outras divisões têm a ver com pessoas, não com programas: um arquivo por região para cada gerente regional, um por fornecedor só com os produtos dele, ou partes iguais de uma lista de ligações para cada pessoa da equipe. Nesses casos, faz mais sentido dividir pelo valor de uma coluna ou em um número fixo de arquivos, em vez de uma quantidade fixa de linhas.
| Situação | Dividir por | Configuração típica |
|---|---|---|
| Limite de importação de 10.000 linhas por arquivo | Quantidade de linhas | Linhas por arquivo: 10000 |
| Arquivo grande demais para o Excel | Quantidade de linhas | Linhas por arquivo: 1000000 |
| A mesma parte para quatro colegas | Número de arquivos | Número de arquivos: 4 |
| Um arquivo por filial, cidade ou fornecedor | Valor da coluna | Coluna: Filial |
| Anexo acima do limite do e-mail | Número de arquivos | Arquivos suficientes para ficar abaixo do limite |
Como escolher o tamanho de cada parte
Se a plataforma informa um limite de linhas, use esse número diretamente, mas deixe uma pequena folga, porque alguns importadores contam o cabeçalho como uma linha. Se o limite é em megabytes, divida o tamanho do arquivo pelo limite e arredonde para cima para saber quantos arquivos são necessários, depois escolha Número de arquivos para que cada parte tenha mais ou menos o mesmo tamanho. Uma exportação de 180 MB com limite de 50 MB precisa de quatro arquivos.
Linhas por arquivo e Número de arquivos se comportam de forma diferente na última parte. Linhas por arquivo preenche cada parte por completo e deixa o restante na última, então 25.500 linhas com 10.000 por arquivo geram dois arquivos cheios e um com 5.500 linhas. Número de arquivos distribui as linhas da forma mais igual possível, então a mesma tabela em três arquivos fica com 8.500 linhas em cada.
As partes recebem o nome do arquivo original com um número da mesma largura em todas, como pedidos_01.csv até pedidos_12.csv, para continuarem na ordem certa quando ordenadas por nome.
Dividir pelo valor de uma coluna
Escolha Valor da coluna em Dividir por e selecione a coluna na lista, que é preenchida com o cabeçalho do seu arquivo. A ferramenta cria um arquivo para cada valor diferente e dá a ele o nome desse valor, por exemplo pedidos_Campinas.csv e pedidos_Salvador.csv. As linhas em que a coluna está vazia são reunidas em um arquivo com vazio no nome, então nenhuma linha se perde.
Os valores são comparados depois de remover os espaços do início e do fim, então Salvador e Salvador com um espaço no final vão para o mesmo arquivo. Maiúsculas e minúsculas são mantidas separadas, porque em códigos elas podem significar coisas diferentes. Uma coluna com mais de 1.000 valores diferentes, como um número de pedido, criaria arquivos demais, então a ferramenta para e pede uma coluna com menos valores.
Mantendo os dados intactos
O separador é detectado automaticamente, seja vírgula, ponto e vírgula, tabulação ou barra vertical, e as partes mantêm o mesmo separador, a não ser que você escolha outro em Separador. Valores entre aspas que contêm vírgulas, aspas ou quebras de linha ficam em uma só célula. Os valores são copiados exatamente, então códigos de barras e CEPs com zeros à esquerda, números de identificação longos e datas não mudam.
Cada parte em CSV é salva em UTF-8 com uma marca de ordem de bytes (BOM), que avisa o Excel para mostrar corretamente as letras acentuadas quando o arquivo é aberto com um clique duplo. Se o original foi salvo por um programa antigo com uma codificação regional do Windows, ele é reconhecido e convertido para UTF-8 no caminho. Você também pode colocar Salvar como em Excel para receber pastas de trabalho .xlsx com a linha de cabeçalho em negrito e congelada, em que colunas com zeros à esquerda continuam como texto.
Arquivos muito grandes e outros métodos
A ferramenta lê arquivos CSV em pequenas partes em segundo plano, então um arquivo de 100 MB com várias centenas de milhares de linhas é dividido em segundos em um notebook comum e a página continua respondendo. O limite é a memória do seu dispositivo: as partes ficam na memória até você baixá-las, então para arquivos de vários gigabytes uma ferramenta de linha de comando é a melhor escolha.
No macOS e no Linux, o comando split corta um arquivo por linhas, por exemplo split -l 10000 dados.csv parte_, mas ele não repete o cabeçalho e corta dentro de valores entre aspas que ocupam várias linhas. No Excel dá para copiar blocos de linhas para novas pastas de trabalho à mão, o que funciona para poucas partes, mas é lento e fácil de errar. O Power Query ou um script curto em Python com o módulo csv lidam bem com quebras de linha entre aspas, se você tiver familiaridade com eles.
Problemas comuns e como resolver
- As partes têm só uma coluna: o arquivo usa um separador que o Excel não espera. Importe com Dados, De Texto/CSV, ou coloque Salvar como em Excel.
- Aparece um aviso de que um valor entre aspas não foi fechado: falta uma aspa em algum ponto do arquivo, muitas vezes na descrição de um produto. Abra o arquivo em um editor de texto, encontre a linha e corrija a aspa.
- A lista de colunas está vazia: adicione o arquivo primeiro; a lista é preenchida com a primeira linha dele. Se o arquivo não tem cabeçalho, desative A primeira linha é o cabeçalho e escolha a coluna pelo número.
- Arquivos demais: com um valor pequeno em Linhas por arquivo, uma tabela grande geraria milhares de arquivos. Escolha um valor maior; a ferramenta permite até 1.000 partes.