Visual Basic - Smazání řádků v tabulce

Problém

Mám data v List2 až 900 000 řádků a sloupec Q (sloupec hodnot). Nejsem si jistý, jak napsat VB, který bude vypadat ve sloupci Q a pokud neodpovídá těmto hodnotám 1.0E + 17, 1.0E + 30, 1.5E + 30 THEN odstranit řádky?

Mám tento VB níže, který se bude dívat na přesné hodnoty a odstranit tyto řádky. Ale potřebuji reverz, který NEPOUŽÍVÁ řádky s těmito hodnotami, ale smaže všechny ostatní řádky.

 Dílčí test () Dim rng jako rozsah, buňka jako rozsah, del jako rozsah 'pro vymazání nuly & 1e + 22 nastavení rng = průsečík (rozsah ("Q: Q"), ActiveSheet.UsedRange) pro každou buňku v rng pokud (buňka .Value) = "1E + 17" _ Nebo (Cell.Value) = "100000000000000000" _ Nebo (Cell.Value) = "51.8" _ Nebo (Cell.Value) = "Inf" Pak Pokud del není nic, pak nastavte del = Else buňky: Nastavit del = Union (del, Cell) End If End If Next Cell On Error Resume Další del.EntireRow.Delete End Sub 

Řešení

Změnit následující:

 Nebo (Cell.Value) = "Inf" Potom Pokud del Is Nothing Then _ tp Nebo (Cell.Value) = "Inf" Pak jinak Pokud del Is Nothing Then 

Díky rizvisa1 pro tento tip.

Předchozí Článek Následující Článek

Nejlepší Tipy