Funkce VBA nefunguje Použijte funkci Nefungovat s funkcí IF ve VBA

Excel VBA nefunguje

Logické funkce jsou užitečné pro výpočty, které k testování vyžadují více podmínek nebo kritérií. V našich dřívějších článcích jsme viděli podmínky „VBA IF“, „VBA OR“ a „VBA AND“. V tomto článku probereme „VBA NOT“ s funkcí IF v aplikaci Excel. Abychom tomu porozuměli jako první, musíme se podívat na funkci „VBA NOT“.

Příklady

Příklad č. 1

Funkce NOT je k dispozici také u VBA a funguje přesně stejně jako funkce Excel. Podívejte se například na níže uvedenou sadu kódu VBA.

Kód:

Sub NOT_Example1 () Dim k As String k = Ne (45 = 45) MsgBox k End Sub

Ve výše uvedeném kódu jsme proměnnou „k“ deklarovali jako řetězec.

Dim k As String

Dále jsme hodnotu přiřadili pomocí funkce NOT. Neříká funkce NOT, zda je číslo 45 rovno 45 nebo ne?

k = ne (45 = 45)

Dále jsme proměnné „k“ v okně se zprávou přiřadili hodnotu návratu funkcí NOT.

MsgBox k

Spusťte kód a podívejte se, jaký je výsledek.

Příklad č. 2 - NE s funkcí IF

Jak jsem řekl v jednom z dřívějších článků, „IF s jinými logickými funkcemi jsou nejlepší páry v aplikaci Excel.“

Podobně NE s IF je užitečné v mnoha ohledech. S IF můžeme mít vlastní výsledky namísto výchozích výsledků PRAVDA nebo NEPRAVDA.

Vezměte stejný ukázkový kód shora a použijeme NOT s funkcí IF.

Kód:

Sub NOT_Example2 () Dim k As String If Not (45 = 45) Then k = "Výsledek testu je PRAVDA" Jinak k = "Výsledek testu je FALSE" Konec, pokud MsgBox k End Sub

Ve výše uvedeném kódu jsme změnili výchozí výsledky z „Výsledek testu je NEPRAVDA“ a „Výsledek testu je PRAVDA“. Pokud je zadaný logický test pravdivý, vrátí „Výsledek testu je NEPRAVDA“ a pokud je dodaný logický test nepravdivý, vrátí se. "Výsledek testu je SKUTEČNÝ."

Ve výše uvedeném kódu máme hodnotu 45 = 45, takže odpověď získáme následovně.

Příklad č. 3 - Pokročilé NOT

Funkce NOT se nejlépe využije s funkcí IF. Pomocí této funkce můžeme skrýt všechny listy kromě jednoho konkrétního.

V naší aplikaci Excel máme různé listy.

Níže je ukázkový kód pro skrytí všech listů kromě jednoho konkrétního listu.

Kód:

Sub NOT_Example3 () Dim Ws jako list pro každou W v ActiveWorkbook.Worksheets, pokud ne (Ws.Name = "datový list"), pak Ws.Visible = xlSheetVeryHideen End If Next Ws End Sub

Výše uvedený kód skrývá všechny listy kromě listu „Datový list“.

Tento kód VBA můžete použít ke skrytí všech listů kromě jednoho konkrétního listu změnou názvu listu na název listu.

Stejně jako můžeme také v Excelu odkrýt listy. Níže uvedený kód odkryje všechny listy kromě názvu listu „Datový list“.

Kód:

Sub NOT_Example4 () Dim Ws jako list pro každou W v ActiveWorkbook.Worksheets, pokud ne (Ws.Name = "datový list"), pak Ws.Visible = xlSheetVisible End If Next Ws End Sub

Níže uvedený kód odkryje pouze název listu „Datový list“.

Kód:

Sub NOT_Example3 () Dim Ws jako list pro každou W v ActiveWorkbook.Worksheets, pokud ne (Ws.Name "datový list"), pak Ws.Visible = xlSheetVisible End If Next Ws End Sub

Zajímavé články...