Показать сообщение отдельно
Старый 06.05.2010, 11:19   #15  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от Roman N. Krivov Посмотреть сообщение
А на деле получается, что все строки данной матрицы равны первой, т.е.:
Вопрос: почему?
Потому что такая особенность этого дела - желает Excel элементы Array в строку записывать и всё тут.
Вот маленький джобик, по-моему, достаточно наглядный:
X++:
    COM     rng = sysExcelApplication::construct().workbooks().add().worksheets().itemFromNum(1).cells().range('A1:C3').comObject();
    Array   arr = new Array(Types::String);
    ;
    arr.value(1, '1'); arr.value(2, '2'); arr.value(3, '3');
    arr.value(4, '4'); arr.value(5, '5'); arr.value(6, '6');
    arr.value(7, '7'); arr.value(8, '8'); arr.value(9, '9');

    rng.value2(arr); // вставка в диапазон A1:C3 - размер 3 х 3

    rng = rng.Offset(4,0);
    rng = rng.Resize(1,9);
    rng.value2(arr); // вставка в диапазон A5:I5 - размер 1 х 9 (одна строка)

    rng = rng.Offset(3,0);
    rng = rng.Resize(1,12);
    rng.value2(arr); // вставка в диапазон A9:L9 - размер 1 х 12 (одна строка)

    COM::createFromObject(rng.Application()).Visible(true);