О, больная тема! О, любимая мозоль!
Poleax, бросайте изучать ComExcelDocument_RU, начинайте изучать Excel!
Тогда вы будете знать, что для вставки пустой строки перед ячейкой не надо узнавать ее номер, чтобы потом скормить его методу-обертке, вставляющему i-ю строку в таблицу. Если танцевать от comRange, а не от вездесущего текстового букмарка ("test"), который на каждом шаге переводится всё в тот же comRange (который почему-то приговорен быть локальным в методах этого класса), то пустая строка перед comRange вставляется так:
Код:
comRange.EntireRow().Insert()
Это псевдокод. В реале это надо расписать, как полагается при трансляции с VBA в X++ - на двух строчках. Потом посчитайте, сколько строк лишнего кода выполнится в вашем алгоритме, перед тем как в таблице появится пустая строка.
P.S. При желании можно сократить кол-во строк до одной, если воcпользоваться последними достижениями в этой области
X++:
comEarlyBindingImitation( comRange,'EntireRow()','Insert()');
Подробности здесь:
Gustav: Unsorted, или Записки DAX-дилетанта - II