C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Вывод массива данных в Excel
Guest
Отправлено: 17.05.2005, 16:53


Не зарегистрирован







Пытаюсь вывести массив данных в Excel.
Код примера с массивом из двух элементов:

Variant XL,WS;
Variant ar[2];

ar[0]="Cell 1";
ar[1]="Cell 2";

XL=CreateOleObject("excel.application");
XL.OlePropertySet("SheetsInNewWorkbook",(Variant)1);
XL.OlePropertyGet("Workbooks").Exec(Procedure("Add"));
WS = XL.OlePropertyGet("ActiveWorkbook").OlePropertyGet("ActiveSheet");

WS.OlePropertyGet("Range","A1:B1").OlePropertySet("Value",ar);
XL.OlePropertySet("Visible",true);

Почему-то в Excel все ячейки заполнены одинаковым значением из ar[0].
В чем ошибка?
GIZMO
Отправлено: 18.05.2005, 09:50


Машинист паровоза

Группа: Участник
Сообщений: 174



QUOTE (Guest @ 17/05/2005, 16:53)
Пытаюсь вывести массив данных в Excel.
Код примера с массивом из двух элементов:

Variant XL,WS;
Variant ar[2];

ar[0]="Cell 1";
ar[1]="Cell 2";

XL=CreateOleObject("excel.application");
XL.OlePropertySet("SheetsInNewWorkbook",(Variant)1);
XL.OlePropertyGet("Workbooks").Exec(Procedure("Add"));
WS = XL.OlePropertyGet("ActiveWorkbook").OlePropertyGet("ActiveSheet");

WS.OlePropertyGet("Range","A1:B1").OlePropertySet("Value",ar);
XL.OlePropertySet("Visible",true);

Почему-то в Excel все ячейки заполнены одинаковым значением из ar[0].
В чем ошибка?

Оглянись...
http://www.cbuilder.ru/WinLesson/Winles.htm
** avtoritet
Отправлено: 18.05.2005, 14:39


Не зарегистрирован







Variant XL,WS;
Variant ar[2];

ar[0]="Cell 1";
ar[1]="Cell 2";

XL=CreateOleObject("excel.application");
XL.OlePropertySet("SheetsInNewWorkbook",(Variant)1);
XL.OlePropertyGet("Workbooks").Exec(Procedure("Add"));
WS = XL.OlePropertyGet("ActiveWorkbook").OlePropertyGet("ActiveSheet");

for(int i = 1; i<3; i++){
WS.OlePropertyGet("Cells",1,i)OlePropertySet("Value",ar[i-1].c_str());
}
XL.OlePropertySet("Visible",true);
Вот так вот надо делать! БСБ с диапозонм не работает!
GIZMO
Отправлено: 19.05.2005, 08:37


Машинист паровоза

Группа: Участник
Сообщений: 174



QUOTE (** avtoritet @ 18/05/2005, 14:39)
Вот так вот надо делать! БСБ с диапозонм не работает!

Да, что ты говоришь...

Вернуться в Вопросы программирования в C++Builder