powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Конвертер xls в csv
25 сообщений из 51, страница 1 из 3
Конвертер xls в csv
    #38836737
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал 1.vbs

Вставляю код :
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Dim workbook
Dim worksheet
Dim k

set xapp = WScript.CreateObject("Excel.Application")
xapp.Visible = True

' Make a new Excel workbook:
'set workbook = xapp.Workbooks.Add
'set worksheet = workbook.Worksheets("sheet1")

'for k = 1 to 12
' worksheet.Cells(k, 2).Value = 2 * k + 1
'next

'worksheet.Cells(14, 1).Value = "Total:"
'worksheet.Cells(14, 2).Value = "=sum(B1:B12)"
'worksheet.Cells(14, 1).Font.Italic = True

xapp.WorkBooks.Open("C:\1.xls")

workbook.SaveAs("D:\2.cvs")

workbook.Close

xapp.Quit



Вылетает ошибка строка 22 символ 1, трубуется символ
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836743
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,
торопился не описал что хочу: xls файл,хочу переделать в cvs, для загрузки его в БД (Oracle Sql*Loader обрабатывает только csv). Может кто знает программный способ конвертации xls в cvs? (создаю батник для подгрузки, так сказать автоматизирую процесс).
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836745
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

set workbook = xapp.WorkBooks.Open("C:\1.xls")
?
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836749
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-k2-,
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Dim workbook
Dim worksheet
Dim k

set xapp = WScript.CreateObject("Excel.Application")
xapp.Visible = True

' Make a new Excel workbook:
'set workbook = xapp.Workbooks.Add
'set worksheet = workbook.Worksheets("sheet1")

'for k = 1 to 12
' worksheet.Cells(k, 2).Value = 2 * k + 1
'next

'worksheet.Cells(14, 1).Value = "Total:"
'worksheet.Cells(14, 2).Value = "=sum(B1:B12)"
'worksheet.Cells(14, 1).Font.Italic = True

set workbook = xapp.WorkBooks.Open("C:\1.xls")

workbook.SaveAs("c:\2.cvs")

workbook.Close

xapp.Quit



делаю так: выпадает ошибка офиса прекращена работа Micr.Exel, создается файл 2.cvs, открываешь блокнотом там белеберда....
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836760
Фотография -k2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836777
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamaraоткрываешь блокнотом там белеберда....потому что, во-первых, не cvs, а csv, а во-вторых нужно не только расширение указывать, но и формат сохранения. у тебя сохранился обычный xls под расширением cvs.
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836782
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,
где его указать?
вот это указать?

Можешь код подправить?
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836788
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

FileFormat:=xlCSV
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38836902
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел другой скрипт, но вместо ; стоят запятые, как поправить? и ошибку эксель постоянно выкидывает
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Dim workbook
Dim worksheet
Dim k

set xapp = WScript.CreateObject("Excel.Application")
xapp.Visible = True


set workbook = xapp.workbooks.open("C:\1.xls")
workbook.SaveAs "c:\1.csv" , 23 'xlCSVWindows



workbook.Close

xapp.Quit
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837082
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

...если не пользоваться Excel.Application, а подключаться через ADO, то можно руками прописать все разделители и сохранить в файл как надо ...
Использование ADO с данными Excel из Visual Basic или VBA

...но, возможно, в данном случае это избыточно ... Хотя я предпочитаю именно такой путь для скриптов ..
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837251
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

сейчас проверил, такой код отрабатывает без ошибок. Офис правда 2010, но на 2003 тоже должен нормально отработать.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
option explicit

Dim xapp
Dim workbook

set xapp = WScript.CreateObject("Excel.Application")
xapp.Visible = True
xapp.DisplayAlerts = False

set workbook = xapp.workbooks.open("C:\1\1.xls")
workbook.SaveAs "c:\1\1.csv", 23

xapp.Quit
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837554
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89,
прекращена работа exel
закрыть или искать ошибку в интернете
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837564
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

но файл создался

НО с разделителями запятыми, а ме нужно ;
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837641
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

может сервиспак последний на Офис накатить?
Создаем из Excel, текстовый файл через ADO c любым разделителем
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
option explicit

dim rs, ConnectionString, s, i, fso, f, Separator
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateTextFile("c:\1\1.csv", True)

Set rs = CreateObject("ADODB.Recordset")
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\1\1.xls;User ID=Admin;Password=;Extended Properties=""Excel 8.0;IMEX=1""" 'IMEX=1 нужен, чтобы корректно прочитался столбец, если в нем идут вмеперешку ячейки с числами, датами, строками...

rs.Open "select * from [Лист1$]", ConnectionString

s = ""
Separator = ";"

'Заголовок
for i = 0 to rs.Fields.Count - 1
	s = s & CStr(rs.Fields(i).Name) & Separator
next
f.WriteLine(s)

'Бегаем по данным
while not rs.EOF
		s = ""
		for i = 0 to rs.Fields.Count - 1
			s = s & CStr(rs.Fields(i).Value) & Separator
		next
	f.WriteLine(s)
	rs.MoveNext
wend

rs.Close
Set rs = Nothing

f.Close
set f = nothing
set fso = nothing

...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837726
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89,
вставил в .vbs и изменил пути к файлу, выдает ошибку стора 25
Код: vbnet
1.
s = s & CStr(rs.Fields(i).Value) & Separator


что подправить или доустановить?
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837743
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89adminsamara,

может сервиспак последний на Офис накатить?
Создаем из Excel, текстовый файл через ADO c любым разделителем
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
option explicit

dim rs, ConnectionString, s, i, fso, f, Separator
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateTextFile("c:\1\1.csv", True)

Set rs = CreateObject("ADODB.Recordset")
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\1\1.xls;User ID=Admin;Password=;Extended Properties=""Excel 8.0;IMEX=1""" 'IMEX=1 нужен, чтобы корректно прочитался столбец, если в нем идут вмеперешку ячейки с числами, датами, строками...

rs.Open "select * from [Лист1$]", ConnectionString

s = ""
Separator = ";"

'Заголовок
for i = 0 to rs.Fields.Count - 1
	s = s & CStr(rs.Fields(i).Name) & Separator
next
f.WriteLine(s)

'Бегаем по данным
while not rs.EOF
		s = ""
		for i = 0 to rs.Fields.Count - 1
			s = s & CStr(rs.Fields(i).Value) & Separator
		next
	f.WriteLine(s)
	rs.MoveNext
wend

rs.Close
Set rs = Nothing

f.Close
set f = nothing
set fso = nothing



Установил СП 3 таже ошибка, причем что на 2003 что на 2010 офисе, есть еще соображения?
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38837859
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamaraвставил в .vbs и изменил пути к файлу, выдает ошибку стора 25
Код: vbnet
1.
s = s & CStr(rs.Fields(i).Value) & Separator

Текст ошибки???

Еще, может проблема в самом файле Excel?
Прилагаю xls, над которым экспериментировал. Прогоните его первым способом 17017823 и вторым 17020069
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838020
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

ой, файл забыл. Вот он.
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838100
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara
Установил СП 3 таже ошибка, причем что на 2003 что на 2010 офисе, есть еще соображения?

.. так а там офис-то и не нужен ... если файл нормальный
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838275
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotik,

на 3 разных пк пробовал, ошибка, одна и таже. офис и ос с одного дистрибутива
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838284
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на торрент ткните где офис скачивали....
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838301
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamaraвставил в .vbs и изменил пути к файлу, выдает ошибку стора 25
Код: vbnet
1.
s = s & CStr(rs.Fields(i).Value) & Separator

Текст ошибки???

Еще, может проблема в самом файле Excel?
Прилагаю xls, над которым экспериментировал. Прогоните его первым способом 17017823 и вторым 17020069
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838305
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89,
Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: EXCEL.EXE
Версия приложения: 14.0.6106.5005
Отметка времени приложения: 4e26f27d
Имя модуля с ошибкой: MSVBVM60.DLL
Версия модуля с ошибкой: 6.0.98.15
Отметка времени модуля с ошибкой: 4a5bda6c
Код исключения: c0000005
Смещение исключения: 000e49ad
Версия ОС: 6.1.7600.2.0.0.256.1
Код языка: 1049

Дополнительные сведения об этой проблеме:
LCID: 1049
skulcid: 1049

Ознакомьтесь с заявлением о конфиденциальности в Интернете:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0419

Если заявление о конфиденциальности в Интернете недоступно, ознакомьтесь с его локальным вариантом:
C:\Windows\system32\ru-RU\erofflps.txt



файл ваш подгружал
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838317
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adminsamara,

... вы, вероятно, не совсем поняли ... тот скрипт, который предложил user89, вообще не требует установленного MS Office ....
...
Рейтинг: 0 / 0
Конвертер xls в csv
    #38838324
Фотография adminsamara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotik,

парни извиняйте, пятница, подскажите как что?! какие действия? что сделать?
...
Рейтинг: 0 / 0
25 сообщений из 51, страница 1 из 3
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Конвертер xls в csv
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]