DesenvolvimentoPagamento protegidoDetalhes
- Os ajustes previstos no pacote são gratuitos.
- Se você não responder em 3 dias após a entrega, o trabalho é aprovado automaticamente.
O dinheiro fica reservado no pagamento e só é liberado quando você aprova o trabalho.

Exemplo de resultado
Juntando os arquivos mensais de vendas de 9 lojas em um só relatório do Excel
Como ele é executado
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Pasta: sales/2026-10, 9 arquivos encontrados
2026-11-02 09:14:03 INFO shop-01.csv: 1.284 linhas
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 linhas
2026-11-02 09:14:04 WARN shop-07.csv: 3 linhas sem preço ignoradas (linhas 88, 412, 913)
2026-11-02 09:14:05 INFO Pronto: 10.412 linhas -> report-2026-10.xlsx (abas "Vendas" e "Totais")
Configurações, não código
Os nomes das colunas de cada loja ficam no settings.ini, então uma loja nova ou uma coluna renomeada é só uma linha ali:
[columns]
date = Data, Data da venda, Dia
product = Produto, Item, Descrição
quantity = Qtd, Quantidade, Unid
price = Preço, Preço unitário
Um trecho do código
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Lê o arquivo de uma loja e dá a ele os nomes de colunas do relatório."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: nenhuma coluna para '{name}' (procuradas: {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
Arquivos: um arquivo ZIP com merge_sales.py (310 linhas), settings.ini, requirements.txt e um README que explica como instalar o Python, como rodar o script e o que significa cada mensagem do registro. O cliente roda o script no próprio computador.
Cliente: uma pequena rede de 9 papelarias; cada loja envia as vendas do mês em um arquivo CSV ou Excel, com nomes de colunas um pouco diferentes. Tarefa: um script que lê todos os arquivos de uma pasta, deixa as colunas em um só formato e grava um único relatório do Excel com todas as vendas e uma aba de totais por loja.
O cliente e todos os dados são fictícios.
Sobre este serviço
Exportações mensais, relatórios de filiais, arquivos de vários fornecedores: quando os mesmos dados chegam em dezenas de arquivos CSV e Excel, copiar tudo à mão para uma tabela é lento e fácil de errar. Este script em Python lê todos os arquivos da pasta que você definir, incluindo várias abas de uma mesma pasta de trabalho, alinha as colunas pelo nome, inclui uma coluna com o arquivo de origem e salva um único arquivo CSV ou Excel. A partir do Padrão, ele lida com colunas que têm nomes diferentes em arquivos diferentes e mantém um log das linhas que não conseguiu ler. Envie dois ou três arquivos de exemplo com algumas linhas cada. Você mesmo roda o script no seu computador. O Excel comporta até 1.048.576 linhas por aba, então um resultado maior é salvo em CSV.
O que está incluído
- O que você recebeUm arquivo ZIP com o script em Python, um README com instruções passo a passo e, a partir do Padrão, um arquivo de configurações com a sua pasta e os nomes das colunas; o código também aparece na página do pedido.
- CSV e Excel juntosArquivos dos dois tipos em uma pasta, várias abas por pasta de trabalho
- Colunas alinhadasPelo nome, mesmo quando a ordem muda entre os arquivos
- Coluna de origemCada linha mostra de qual arquivo veio
- Codificações e separadoresVírgulas ou pontos e vírgulas, UTF-8 ou codificações antigas do Windows
- Código legívelCom comentários, fácil de incluir uma coluna depois
Como funciona
- 1ExemplosVocê envia dois ou três arquivos de exemplo e diz como o resultado deve ficar
- 2CódigoEscrevemos o script e o guia para rodá-lo
- 3TesteVocê roda em uma cópia da sua pasta e confere os totais
- 4AjustesVocê pede ajustes dentro do seu pacote e envia qualquer mensagem de erro
O que precisamos de você
Dois ou três dos arquivos que você junta, reduzidos a algumas linhas (troque nomes ou valores reais, se quiser), mais ou menos quantos arquivos são e de que tamanho, e como deve ser o resultado: CSV ou Excel, quais colunas e em que ordem, e se as linhas repetidas devem ficar. Se os arquivos forem diferentes (outros nomes de colunas, linhas extras de cabeçalho), um exemplo de cada tipo. O seu sistema: Windows, macOS ou Linux.
Vamos perguntar:
- Quais arquivos você junta?
- Como o resultado deve ficar?
- Os arquivos são diferentes entre si?
- Onde ele vai rodar?
Compare os pacotes
| Pacotes | BásicoJuntar um tipo de arquivoR$ 89 | PadrãoJuntar com configuraçõesR$ 184 | PremiumFerramenta de junçãoR$ 373 |
|---|---|---|---|
| Prazo | 1 dia | 2 dias | 3 dias |
| Ajustes | 1 | 2 | 3 |
| Código | até 150 linhas | até 400 linhas | até 1.000 linhas |
| Arquivos de código | 1 | até 3 | até 8 |
| Arquivo de configurações | Não | Sim | Sim |
| Mensagens de erro claras e um log | Não | Sim | Sim |
| Opções de execução e guia para rodar de forma agendada | Não | Não | Sim |
| Guia de instalação e execução (README) | Sim | Sim | Sim |
| Linguagem | Python | Python | Python |
| Fazer pedido Básico | Fazer pedido Padrão | Fazer pedido Premium |
Pagamento protegido
Você paga ao fazer o pedido, mas o dinheiro só é liberado pelo trabalho aprovado.
- Preço fixoO preço do pacote não muda depois que você paga.
- O dinheiro fica reservadoAo pagar, o valor fica apenas reservado. Ele só é repassado quando você aprova o trabalho.
- Verificado antes da entregaCada resultado passa por um controle de qualidade antes de chegar até você, e você o vê na página do pedido antes de aprovar.
- Ajustes gratuitosPeça ajustes dentro do seu briefing quantas vezes o pacote permitir.
- Aprovação após 3 diasSe em 3 dias após a entrega você não aprovar o trabalho nem pedir ajustes, ele é aprovado automaticamente. Se você escrever no chat do pedido após a entrega, o pedido fica em espera; depois que respondermos, podemos reiniciar a contagem de 3 dias e avisaremos no chat.
- Refazer ou reembolso totalSe o resultado não corresponder ao seu briefing e os ajustes não resolverem, ou se o trabalho levar mais que o dobro do prazo, escreva no chat do pedido: refazemos o trabalho ou reembolsamos o pagamento integralmente.
Perguntas e respostas
E se os arquivos tiverem colunas diferentes?
A partir do Padrão, você lista no arquivo de configurações quais nomes significam a mesma coluna, por exemplo Preço, Custo e Valor. Colunas que existem só em alguns arquivos ficam, com células vazias nas outras linhas.
Ele mantém fórmulas e formatação?
Não. Ele junta os valores: o que você vê nas células. Cores, células mescladas e fórmulas não são levadas.
Quantos arquivos ele aguenta?
Centenas de arquivos rodam bem em um computador comum. O limite é o resultado: mais de 1.048.576 linhas não cabem em uma aba do Excel, então ele é salvo em CSV.
Preciso enviar os meus arquivos reais?
Não. Algumas linhas de cada tipo de arquivo bastam, e você pode trocar nomes e valores por dados inventados. O script depois roda nos seus arquivos reais, no seu computador.
Não encontrou a resposta?


