Как быстро удалять лишние строки? - VBA

Узнай цену своей работы

Формулировка задачи:

На листе есть структурированные данные: столбцов 40-250 (иногда больше), строк вообще 100 000-140 000 (и очень часто может быть больше). Я нарисовал функцию, которая выбирает уникальные строки, остальные с листа удаляет командой
Листинг программы
  1. Rows(i).Delete
Работает это крайне медленно. На обработку 140 000 строк (осталось 28861 уникальных) ушло что-то около 6 часов. Сделать массив и обработать его не представляется возможным: слишком здоровый получается 140 000 строк * 200 столбцов *64 (тип Variant) = 1792 000 000 Вообщем лучше на листе... Может у кого есть идеи - как это ускорить? А то на ночь ставлю - и не факт, что утром будет готово...

Решение задачи: «Как быстро удалять лишние строки?»

textual
Листинг программы
  1. With Application
  2. .ScreenUpdating = False
  3.  .Calculation = xlManual
  4.  End With

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут