Задать значения диапазона Excel без очистки фильтров - PullRequest
0 голосов
/ 10 января 2020

Обычно я работаю с массивами, потому что это ускоряет обработку в VBA. EG

'get data
values = dataRange.value

'Do some work on values array

'set data
dataRange.value = values

Недавно мы заметили, что при выполнении того же процесса в Excel для таблицы с фильтрами Excel:

Выполняет метод получения, как и следовало ожидать, получая все значения:

'get data
values = table.DataBodyRange.value

Выполняет установщик, начиная с первой отфильтрованной строки:

'set data
table.DataBodyRange.value = values 'Starts at the visible row?!

Он делает это, даже если DataBodyRange.address показывает, что диапазон превышает все данные

Наш В настоящее время обходной путь заключается в сохранении настроек фильтра, очистке фильтра, установке данных и повторном применении фильтра. Однако это медленно и кажется бессмысленным. Кто-нибудь знает более прямой способ выполнения этой работы?

Обход кода:

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