Eu quero criar vários arquivos csv a partir dos dados no arquivo csv principal

0

Eu não sou especialista, por isso peço desculpas antecipadamente pela minha pergunta (que tenho certeza que é bastante básica para um usuário avançado). Eu tenho mais de 350 linhas em um arquivo excel. Em vez de copiar e colar as linhas individuais para criar os arquivos csv exclusivos de que preciso, esperava que houvesse uma maneira de fazer isso com uma macro?

    
por Roberto 27.11.2016 / 21:29

2 respostas

0

Salve todo o arquivo do Excel como csv chamado myfile.csv

Na mesma pasta, crie o arquivo split.bat com o conteúdo:

@echo off
set /a c=0
setlocal ENABLEDELAYEDEXPANSION

for /F "tokens=*" %%A in (myfile.csv) do ( 
  set /a c=c+1   
  echo %%A > !c!.csv
)

Execute split.bat e você terá mais de 350 arquivos csv com uma linha dentro

    
por 28.11.2016 / 02:19
-1

Você pode salvar diretamente como arquivo .csv. Clique em Arquivo e escolha Salvar como .Em Salvar como tipo , escolha CSV (delimitado por vírgulas) . Clique em Salvar.

================== Desculpe por ter entendido mal sua pergunta antes. Você poderia usar o seguinte script python para atingir seu objetivo.

#! /usr/bin/python

from xlrd import open_workbook

f=open_workbook('source.xlsx')
sheets=f.sheets()
for sheet in sheets:
    for r in range(sheet.nrows):
        filename=str(r)+'.csv'
        file=open('%s' % filename,'w+')
        for c in range(sheet.ncols):
            value=str(sheet.cell(r,c).value)
            file.write(value)
            if c!=(sheet.ncols-1):
                file.write(',')
        file.close()
    
por 27.11.2016 / 21:36

Tags