Зачем использовать какую-то дополнительную программу? Учите WSH и будет вам щастье :-) В XP/2000/2003 WSH уже установлен. Следующий текст сохраните в файл "xls2csv.vbs". Запускайте с параметрами — ПОЛНЫЙ путь к файлу xls (например: xls2csv.vbs c:\Book1.xls).
Скрипт сохраняет каждый файл в формате csv.
---------------- xls2csv.vbs ----------------
Const xlCSV = 6
'Objects
Dim objArgs
Dim fso
Dim Excel
'Other variables
Dim i
Dim CsvFileName
Set objArgs = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
Set Excel= CreateObject("Excel.Application")
For i=0 To objArgs.Count-1
CsvFileName = Mid(objArgs(i), 1, InStrRev(objArgs(i), ".xls")-1) & ".csv"
Excel.Visible = False
Excel.Workbooks.Open(objArgs(i))
Excel.Sheets(1).Select
Call Excel.ActiveWorkbook.SaveAs(CsvFileName, xlCSV)
Call Excel.ActiveWorkbook.Close(False)
Excel.Quit
Next
Set objArgs = Nothing
Set fso = Nothing
Set Excel = Nothing
---------------- End of: xls2csv.vbs ----------------
Вот и все. На написание скрипта ушло 15 минут.
Это же можно написать и на Delphi и на С++, и на C# и... тогда вообще ненадо никакими программами пользоваться — пишите всё сами начиная с операционки :). Гыыыыыыыыыы :). Молодец ni28, хорошая идея :).
есть совсем малая и бесплатная программа xls2txt — работает быстро и замечательно, несколько лет пользуюсь. Никаких библиотек и ессно самого excel ей не надо. Поиском найдется, если кому надо.
А ваще меня интересует больше, чтобы обратный конверт был, так как часто приходится всякие логи TXT и DOS файлы с списками открывать,
форматтить, потом в Excel с сводными таблицами трахаться чтобы итоговый отчет составить. Так что развивать сей инструмент еще много надо, и чтобы кодировки все поддерживал.
Конечно это не совсем правильный подход, когда нужно автономный конвертор сваять, использовать офисные DLL. Если на машине нет MSO,
то опа,курит прога. А так может пригодиться для 1С-ников и прочих, кому надо отчеты составлять.
Комментарии
Скрипт сохраняет каждый файл в формате csv.
---------------- xls2csv.vbs ----------------
Const xlCSV = 6
'Objects
Dim objArgs
Dim fso
Dim Excel
'Other variables
Dim i
Dim CsvFileName
Set objArgs = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
Set Excel= CreateObject("Excel.Application")
For i=0 To objArgs.Count-1
CsvFileName = Mid(objArgs(i), 1, InStrRev(objArgs(i), ".xls")-1) & ".csv"
Excel.Visible = False
Excel.Workbooks.Open(objArgs(i))
Excel.Sheets(1).Select
Call Excel.ActiveWorkbook.SaveAs(CsvFileName, xlCSV)
Call Excel.ActiveWorkbook.Close(False)
Excel.Quit
Next
Set objArgs = Nothing
Set fso = Nothing
Set Excel = Nothing
---------------- End of: xls2csv.vbs ----------------
Вот и все. На написание скрипта ушло 15 минут.
может ты положишь куданить из бесплатных то :)
форматтить, потом в Excel с сводными таблицами трахаться чтобы итоговый отчет составить. Так что развивать сей инструмент еще много надо, и чтобы кодировки все поддерживал.
то опа,курит прога. А так может пригодиться для 1С-ников и прочих, кому надо отчеты составлять.
а прога, судя по размеру, пользует стандартные охфисьные билбиотеки...