OLE Excel + BCB5 + VarArrayCreate
От: xUSERx Россия  
Дата: 09.04.07 05:08
Оценка:
Ув. обитатели данного ресурса подскажите пожалуйста в чем моя ошибка.

Пытаюсь записать в Range вариантный массив.

Variant  vVarApp,vVarBooks,vVarBook,vVarSheets,vVarSheet,vVarCell;
Variant v;
vVarApp=CreateOleObject("Excel.Application");
vVarBooks=vVarApp.OlePropertyGet("Workbooks");
vVarApp.OlePropertySet("SheetsInNewWorkbook",1);
vVarBooks.OleProcedure("Add");
vVarBook=vVarBooks.OlePropertyGet("Item",1);
vVarSheets=vVarBook.OlePropertyGet("Worksheets") ;
vVarSheet=vVarSheets.OlePropertyGet("Item",1);
vVarSheet.OlePropertySet("Name","bla bla");
vVarSheet=vVarSheets.OlePropertyGet("Item",1);
vVarApp.OlePropertySet("Visible",true);
vVarCell=vVarSheet.OlePropertyGet("Range","A1:A4");
vVarCell.OleProcedure("Select");
Variant arr = VarArrayCreate(OPENARRAY(int,(0,3)), varByte);
if(arr.IsArray())
 {
   arr.PutElement(1, 0);
   arr.PutElement(2, 1);
   arr.PutElement(3, 2); 
   arr.PutElement(4, 3); 

 vVarCell.OlePropertySet("Value", arr);
 }


Записывает весь Range первым элементом массива.

Подскажите выход?
Не все то код, что компилируеться. (с) Рефракторинг
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.