|
|
#21 |
|
MCITP
|
Цитата:
Сообщение от Gustav
Запишите макрос в Excel, т.е. в пустом Экселе включите запись макро, далее откройте свой файл, сохраните его как xls, закройте файл, выключите запись макро. Получившийся код VBA несите сюда - я помогу его оформить на X++.
Импорт при помощи ADO работает с СОХРАНЕННЫМ файлом на диске! (этот файл как бы БД для него). К тому же, для несохраненного файла вы не сможете указать параметры строки подключения. Поэтому сохранение обязательно при использовании класса gl00mie. Но сомневаюсь, что макрос должен показать как он преобразует файл в удобочитаемый вид для Excel. Собственно вот и макрос. Просто открытие: Sub Test() ' ' Test Макрос ' ' ChDir "C:\" Workbooks.Open Filename:="C:\reportSmall.xls" End Sub Открытие с сохранением: Sub TestFull() ' ' TestFull Ìàêðîñ ' ' ChDir "C:\" Workbooks.Open Filename:="C:\reportSmall.xls" ActiveWorkbook.SaveAs Filename:="C:\reportSmall.xlsx", FileFormat:= _ xlOpenXMLWorkbook, CreateBackup:=False End Sub Последний раз редактировалось GBH; 27.07.2011 в 12:58. |
|
|
|
|
#22 |
|
Moderator
|
Как-то так. Предполагается, что в Excel 2007+ мы сохраняем файл в формате Excel 2003. Открывать дальше Jet'ом 4 (не ACE).
X++: {
COM xlApplication;
COM xlWorkbooks, xlWorkbook;
;
xlApplication = new COM('Excel.Application');
xlWorkbooks = xlApplication.Workbooks();
xlWorkbook = xlWorkbooks.Open(@'C:\reportSmall.xls');
xlWorkbook.SaveAs(@'C:\reportSmall_TEMP.xls', 56); // 56 = xlExcel8
xlWorkbook.Close(false);
} |
|
|
|
| За это сообщение автора поблагодарили: GBH (1). | |
|
|
#23 |
|
MCITP
|
Цитата:
Сообщение от Gustav
Как-то так. Предполагается, что в Excel 2007+ мы сохраняем файл в формате Excel 2003. Открывать дальше Jet'ом 4 (не ACE).
X++: {
COM xlApplication;
COM xlWorkbooks, xlWorkbook;
;
xlApplication = new COM('Excel.Application');
xlWorkbooks = xlApplication.Workbooks();
xlWorkbook = xlWorkbooks.Open(@'C:\reportSmall.xls');
xlWorkbook.SaveAs(@'C:\reportSmall_TEMP.xls', 56); // 56 = xlExcel8
xlWorkbook.Close(false);
}Насчёт Jet не опечатка? |
|
|
|
|
#24 |
|
Moderator
|
|
|
|