Показать сообщение отдельно
Старый 11.11.2016, 14:44   #1  
Artikov is offline
Artikov
Участник
 
33 / 12 (1) ++
Регистрация: 06.06.2016
? высота Range ячеек Excel через COM объекты
Добрый день!

Есть такая проблема: мне надо определять высоту ячейки в Excel через Com объекты. В общем случае у меня выбирается какой-то диапазон ячеек, который принадлежит заданному bookmark. Если в этом bookmark всего одна строка, то все отрабатывает и я получаю высоту строчки, но если там, к примеру, 10 строк, то ничего не возвращает (что логично).

Реализация сейчас:
X++:
void execute(str _bookmark)
{
    COM     currentRange, currentRange1;
    COMVariant      rowHeightVariant;
    real    rowHeight;
    int     rowsNumber, row;
    int     i;

    currentRange  = mapSection.lookup(_bookmark);
    currentRange1 = currentRange.rows();
    
    //row          = currentRange.row();
    rowsNumber   = currentRange1.count();
 
    rowHeightVariant = currentRange1.RowHeight();
    rowHeight        = rowHeightVariant.double();

    this.fillData(_bookmark);

    document.insertBookmarkAfterRow(currentRange,currentRow);
    currentHeight   += rowHeight;
    currentRow      += rowsNumber;
}
наверное, надо как-то пройти по всем строчкам, которые заключены в currentRange1 и считать их высоту, но не знаю, как это сделать.