Existe alguma ferramenta que permite exportar em lote as abas do excel para csv

3

Eu tenho o Excel 2010.

Encontrou isto: Conversor XLS em lote para CSV

Mas, na verdade, preciso exportar todas as planilhas do Excel como arquivos CSV individuais. Não tenho certeza se funciona dessa maneira. Além disso, se eu fosse usar o método acima, como eu realmente uso um script VB? (não familiarizado com programação)

    
por AKA 21.09.2012 / 01:35

1 resposta

2

Aqui está uma versão limpa do script do post ao qual você vinculou:

Option Explicit

Const xlXMLSpreadsheet = 46
Const xlCSV = 6

Dim xl, wb, ws

Dim args : Set args = WScript.Arguments

If args.Count <> 1 Then
  WScript.Echo "Syntax: cscript " & WScript.ScriptName & " filename"
  WScript.Quit(1)
End If

Set xl = CreateObject("Excel.Application")
Set wb = xl.Workbooks.Open(args(0))

xl.DisplayAlerts = False
For Each ws In wb.Worksheets
 ws.activate
 wb.SaveAs CreateObject("Scripting.FileSystemObject").GetBaseName(args(0)) _
   & "_" & Replace(ws.Name, " ", "_") & ".csv", xlCSV
Next
xl.DisplayAlerts = True

wb.Close False
xl.Quit
WScript.Quit

Deve fazer o que quiser. Você chama assim de um prompt de comando:

cscript SCRIPT.vbs INPUT.xls

Cria arquivos de saída INPUT_SHEETNAME.csv .

    
por 21.09.2012 / 02:22