Как бороться листами в TExcelApplication??????
вот код
int I, J, K, R, C;
OleVariant IIndex ;
Variant TabGrid;
wchar_t *NomFich= WideString("d\\Galina\\Ole\\kn.xls").c_bstr();
XLApp->Connect();
ExcelWorkbook *Workbook = XLApp->Workbooks->Add();
//...здесь все умирает
(ExcelWorksheet*)Workbook->Worksheets->get_Item(1);
XLApp->Workbooks->get_Item(NULL, 0);
XLApp->Visible[0] = True;
Что делать..
И как, например, открыть уже существующий файл Excel именно на Билдере. Если делать по аналогии с Делфийским примером - компиллятор жутко ругается на параметры..
И вообще, может кто подскажет, где взять материал по всем объектам вкладки Servers именно для С++ Builder
Цитата:
On 2002-08-21 1904, Munika wrote
Как ни бьюсь - не могу обратиться к листу...
вот код
int I, J, K, R, C;
OleVariant IIndex ;
Variant TabGrid;
wchar_t *NomFich= WideString("d\Galina\Ole\kn.xls").c_bstr();
XLApp->Connect();
ExcelWorkbook *Workbook = XLApp->Workbooks->Add();
//...здесь все умирает
(ExcelWorksheet*)Workbook->Worksheets->get_Item(1);
XLApp->Workbooks->get_Item(NULL, 0);
XLApp->Visible[0] = True;
Что делать..
И как, например, открыть уже существующий файл Excel именно на Билдере. Если делать по аналогии с Делфийским примером - компиллятор жутко ругается на параметры..
И вообще, может кто подскажет, где взять материал по всем объектам вкладки Servers именно для С++ Builder
Почитай пример в хелпе на VariantCreateObject - там все что тебе надо будет расписано со всеми подробностями а за функциями для Excel обращайся в справочник для программистов в нем же...
Цитата:
ExcelWorkbook *Workbook = XLApp->Workbooks->Add();
//...здесь все умирает
(ExcelWorksheet*)Workbook->Worksheets->get_Item(1);
1. Подозреваю, что прежде чем пытаться обратиться к первому листу пустой книги, нужно вызвать Workbook->Worksheets->Add().
2. Мне сильно не нравится вот эта строчка
Цитата:
wchar_t *NomFich= WideString("d\Galina\Ole\kn.xls").c_bstr();
Я бы это написал вот так
BSTR NomFich = WideString("d\\Galina\\Ole\\kn.xls").c_bstr();
....
SysFreeString( NomFich);
Цитата:
1. Подозреваю, что прежде чем пытаться обратиться к первому листу пустой книги, нужно вызвать Workbook->Worksheets->Add().
Огромное спасибо за ответы...
Пыталась я так делать еще раньще - тоже самое AccessViolation
Ну я объявление, WideString - то случайно утуда попало