Мне нужно переместить строки из одного листа в несколько листов назначения на основе множества критериев.Я полагаю, что использование фильтров + копирование / вставка будет намного быстрее, чем зацикливание каждой строки и проверка ее на предмет ее принадлежности, но я не уверен, как получить полезный диапазон после фильтрации данных.Прямо сейчас я создаю диапазон видимых ячеек для захвата следующим образом:
Set rngSuspect = ActiveSheet.Cells.SpecialCells(xlVisible)
, затем вставляю его следующим образом (NextRow
- это Integer
, содержащий следующий пустой номер строки):
rngSuspect.Cut Destination:=Sheets("Suspect WWAs").Rows(NextRow)
Это происходит с сообщением The command you chose cannot be performed with multiple selections. Select a single range and click the command again.
Я предполагаю, что это связано с тем фактом, что данные фактически разбиты на несколько областей из-за отфильтрованных строк.Я бы не стал зацикливаться на каждом ряду в диапазоне и перемещать их по отдельности.Конечно, здесь есть более элегантное решение ...