Visual Basic - видалення рядків у таблиці

Проблема

Я маю дані в Sheet2 до 900000 рядків і до колонки Q (стовпець значень). Я не впевнений, як написати VB, який буде виглядати в колонці Q, і якщо він не відповідає цим значенням 1.0E + 17, 1.0E + 30, 1.5E + 30 THEN видалити рядки?

У мене є VB нижче, який буде дивитися на точні значення і видалити ці рядки. Але мені потрібно зворотний, який НЕ видаляти рядки з цими значеннями, але видалити всі інші рядки.

 Sub-тест () Dim rng As Range, Cell As Range, Del As Range 'Для видалення ZERO'S & 1e + 22 Встановити rng = Перетинати (Діапазон ("Q: Q"), ActiveSheet.UsedRange) Для кожної комірки Якщо (Cell .Value) = "1E + 17" _ Або (Cell.Value) = "100000000000000000" _ Або (Cell.Value) = "51.8" _ Або (Cell.Value) = "Inf" Тоді, якщо Del нічого не встановлює = Cell Else: Set del = Union (del, Cell) Закінчити, якщо закінчити, якщо наступна клітина на помилку Відновити далі del.EntireRow.Delete End Sub 

Рішення

Змініть наступне:

 Або (Cell.Value) = "Inf" Тоді якщо del Nothing, то _ tp Або (Cell.Value) = "Inf" Тоді ще якщо del Nothing Then 

Завдяки rizvisa1 для цього чайові.

Попередня Стаття Наступна Стаття

Кращі Поради