Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Vitalka84

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток!
Стоит следующая задача:
- на удалённом ftp сервере есть каталог в который стекаются файлы в формате .csv.
- нужно скачать файлы локально и перекодировать их в формат .xls
Все эти действия должны происходит в результате запуска одного .bat файла.
Скачивать файлы проблем не составляет, но автоматически перекодировать - проблема. В интернете много написано как это сделать при помощи TotalCSVConverter и ему подобных программ, которые можно запускать с командной строки. Но нормальные программы платные, а всё что я нашёл "шаровое" работает криво либо вообще не работает... Как вариант решил обратится к VBA. Признаюсь сразу, что до этого никогда ничего не писал на VBA.  
Нашёл скрипт, который перекодирует .csv в .xls:
 
const xlCSV = 6
const xlTextMSDOS = 21
const xlWorkbookNormal = -4143
const wdFormatRTF = 6
const wdFormatDocument = 0
const wdFormatText = 2
const wdFormatDOSText = 4
Z = WScript.Arguments.UnNamed.Item(0)
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.DisplayAlerts = False
ExcelApp.WorkBooks.Open "D:\test.csv"
ExcelApp.ActiveWorkbook.SaveAs "D:\test.xls", xlWorkbookNormal
ExcelApp.Quit
 
Далее попытался "научить" скрипт перекодировать все файлы в каталоге. Как параметр Z передаю путь к каталогу:
 
const xlCSV = 6
const xlTextMSDOS = 21
const xlWorkbookNormal = -4143
const wdFormatRTF = 6
const wdFormatDocument = 0
const wdFormatText = 2
const wdFormatDOSText = 4
Z = WScript.Arguments.UnNamed.Item(0)
Dim x as String
Dim file as string
x = "Z"
file = Dir(x)
Do While file <> ""
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.DisplayAlerts = False
ExcelApp.WorkBooks.Open "x & file"
ExcelApp.ActiveWorkbook.SaveAs "x.xls", xlWorkbookNormal
ExcelApp.Quit
file = Dir
Loop  
 
При запуске скрипта с cmd вылетает ошибка:
D:\test.vbs(9, 7) Ошибка компиляции Microsoft VBScript: Предполагается наличие окончания инструкции
Ругается на строку:
Dim x as String
Но что в ней не так? Или вообще весь скрипт написан не правильно?
Запускаю с cmd так:
cscript.exe test.vbs D:\csv\
ОООчень прошу помощи.
Заранее огромное спасибо!  

Всего записей: 5 | Зарегистр. 11-05-2012 | Отправлено: 09:49 12-05-2012
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru