Как избежать использования «Вставить скопированные ячейки» - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь объединить данные из нескольких таблиц, Source1..N, в другой лист, Dest. Существует достаточно большое количество листов и строк, которые я пишу в Delphi для этого. Однако я столкнулся с проблемой, как именно это сделать, что можно проиллюстрировать, манипулируя рабочими листами в графическом интерфейсе Excel, и именно так я попытаюсь объяснить это здесь, потому что цитирование кода просто затеняет проблему.

Каждый из исходных листов содержит переменное число строк с данными в одном столбце и рядом с ним столбца формул, в которых используются данные.

Когда я копирую исходные листы в Dest, я хочу, чтобы они оказались в вертикально разделенных группах строк, например

SourceZRow1
SourceZRow2
...
SourceZRowM
...
SourceMRow1
...
SourcePRow1

и т.д.. Порядок, в котором вставленные источники появляются в Dest, является произвольным.

Я подумал, что способ, которым я должен избегать мешающих друг другу данных и формул в различных вставленных блоках источника, состоит в вставке каждой группы строк источника в свой именованный диапазон строк. Это, кажется, работает, до некоторой степени, однако:

Если я хочу вставить один из исходных блоков, SourceZ, в Dest над уже вставленным блоком, SourceM, который, кажется, работает нормально, если я несколько раз делаю Вставку, чтобы освободить место над Строки SourceM в Dest достаточно высоки, чтобы получить блок SourceZ, но это невероятно утомительно. Итак, я попытался вставить блок SourceZ, используя

Right click Insert Copied cells Shift cells down

, который перемещает строки SourceM вниз, но НЕ имя-диапазона SourceM, так что строки SourceM как бы выталкиваются из своего диапазона, поэтому я получаю вертикальный блок #VALUE! ошибки в столбце формул SourceM. Конечно, это побеждает объект использования именованные диапазоны строк в первую очередь.

Итак, как мне поступить так, как я пытаюсь сделать так, чтобы избежать этой проблемы?

Это в Excel 2007, кстати.

Обновление: я заметил, что оригинальная версия этого q взяла VTC, потому что речь идет не о программировании, а в терминах программирования, это очень похоже на это q: Вставка скопированных ячеек в качестве ссылок в именованный диапазон , но с заменой «как-ссылки-в-» на «выше».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...