IsEmpty to funkcja arkusza roboczego, która służy do sprawdzania, czy dane odwołanie do komórki lub zakres komórek są puste, czy nie, ponieważ jest to funkcja arkusza, więc aby użyć jej w VBA, używamy aplikacji. Metoda arkusza roboczego w VBA, aby użyć tej funkcji, ta funkcja znajduje się pod logicznymi listami funkcji i zwraca wartość true, jeśli odwołanie jest puste.
Funkcja VBA IsEmpty
VBA IsEmpty to funkcja logiczna, która sprawdza, czy wybrana jest pusta, czy nie. Ponieważ jest to funkcja logiczna, zwróci wyniki w postaci wartości logicznych, tj. TRUE lub FALSE.
Jeśli wybrana komórka jest pusta, zwróci TRUE lub FALSE.
W tym artykule pokażemy, jak używać funkcji „ISEMPTY” w języku VBA do sprawdzania komórek za pomocą kodów VBA.

Co robi funkcja ISEMPTY w VBA?
Często puste komórki frustrują nas przy wydajnej pracy w arkuszu. Znalezienie pustych komórek nie jest najtrudniejsze, ale jeśli puste komórki ukrywają je w środku danych, ich znalezienie będzie kosztowne.
Aby znaleźć puste komórki w programie Excel, mamy funkcję o nazwie „ISBLANK” jako funkcję arkusza, ale w VBA nazywa się to „ISEMPTY”.
Działa to podobnie do funkcji arkusza „ISBLANK”. Teraz spójrz na poniższy wzór funkcji „ISEMPTY”.

Jak widać na powyższym obrazku, zwraca on wynik jako Boolean tj. TRUE lub FALSE.
Przykłady funkcji ISEMPTY w VBA
Poniżej znajdują się przykłady IsEmpty w VBA.
Przykład 1
Teraz zobaczymy pierwszy praktyczny przykład „ISEMPTY”. W tym celu spójrz na poniższy obraz arkusza roboczego.

Teraz zastosujemy funkcję Excel VBA ISEMPTY, aby przetestować wszystkie te elementy.
Krok 1: Zdefiniuj zmienną jako Boolean .
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean End Sub

Krok 2: Dla tej zmiennej przypisz wartość za pomocą funkcji VBA ISEMPTY .
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean K = IsEmpty (End Sub

Krok 3: Wyrażenie to nic innego jak komórka, którą testujemy. Teraz testujemy komórkę A1 .
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean K = IsEmpty (Range ("A1"). Value) End Sub

Krok 4: Pokaż wartość tej zmiennej w VBA Msgbox .
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean K = IsEmpty (Range ("A1"). Value) MsgBox K End Sub

Uruchom ten kod, aby sprawdzić wynik.

Ponieważ w komórce A1 znajduje się wartość, otrzymaliśmy wynik jako FAŁSZ.
Teraz zmienię odwołanie do komórki z A1 na A5.
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean K = IsEmpty (Range ("A5"). Value) MsgBox K End Sub
Uruchom ten kod, aby zobaczyć wynik.

Otrzymaliśmy wynik jako PRAWDA, wskazana komórka A5 jest w rzeczywistości pustą komórką, więc otrzymaliśmy wynik jako „PRAWDA”.
Teraz przetestuję komórkę A8.
Kod:
Sub IsEmpty_Example1 () Dim K As Boolean K = IsEmpty (Range ("A8"). Value) MsgBox K End Sub
Uruchom ten kod, aby zobaczyć wynik.

O!!! Czekaj…
Otrzymaliśmy wynik jako FAŁSZ, mimo że w komórce A8 nie ma wartości.
Teraz pytanie, czy jest to błąd wynikający ze wzoru „ISEMPTY” ?.
Nie… Absolutnie nie !!!
Kiedy próbowałem zbadać komórkę A8, w rzeczywistości jest tam znak spacji, który nie jest łatwy do zobaczenia gołym okiem.

Wniosek jest taki, że nawet Space jest uważany za postać w języku Excel i VBA.
Przykład # 2 - Połączenie VBA ISEMPTY z warunkiem IF
W rzeczywistości rzeczywiste użycie funkcji „ISEMPTY” jest godne podziwu, gdy używamy jej z innymi funkcjami logicznymi.
Zwłaszcza gdy używamy go z warunkiem JEŻELI, możemy z niego uzyskać wiele użytecznych wyników.

Na potrzeby tej demonstracji spójrz na poniższy przykład.
W kolumnie Status, jeśli kolumna „Status PF” jest pusta, potrzebujemy wartości „No Update”, a jeśli istnieje jakakolwiek wartość, potrzebujemy wartości „Collected Updates”.
Pamiętaj, że tutaj nie potrzebujemy domyślnego wyniku TRUE lub FALSE. Potrzebujemy tutaj naszych własnych wyników, aby mieć własne, musimy użyć Excel VBA ISEMPTY z warunkiem IF.
Step 1: Open IF condition.
Code:
Sub IsEmpty_Example2() If End Sub

Step 2: Inside the IF condition open ISEMPTY function.
Code:
Sub IsEmpty_Example2() If IsEmpty( End Sub

Step 3: The first logical test is cell B2 value is empty or not.
Code:
Sub IsEmpty_Example2() If IsEmpty(Range("B2").Value) Then End Sub

Step 4: If the logical test in excel vba is TRUE i.e., if the cell is empty, we need the result as “No Update” in cell C2.
Code:
Sub IsEmpty_Example2() If IsEmpty(Range("B2").Value) Then Range("C2").Value = "No Update" End Sub

Step 5: If the logical test is FALSE, we need the result in cell C2 as “Collected Updates.”
Code:
Sub IsEmpty_Example2() If IsEmpty(Range("B2").Value) Then Range("C2").Value = "No Update" Else Range("C2").Value = "Collects Updates" End If End Sub
Ok, we are done.
Run the code to get the result.

We got the result as “Collected Updates” because we have the non-empty cell in B2.
Now similarly apply the code for other cells to test.
Code:
Sub IsEmpty_Example2() If IsEmpty(Range("B2").Value) Then Range("C2").Value = "No Update" Else Range("C2").Value = "Collects Updates" End If If IsEmpty(Range("B3").Value) Then Range("C3").Value = "No Update" Else Range("C3").Value = "Collected Updates" End If If IsEmpty(Range("B4").Value) Then Range("C4").Value = "No Update" Else Range("C4").Value = "Collected Updates" End If End Sub

Run this code to have the results.

In cell C3 we got the result as “No Update” because there is no value in cell B3 i.e. Empty Cell. Since the logical formula returned TRUE we got the respective result.
Example #3 - Alternative to VBA ISEMPTY Function
Mamy alternatywę dla funkcji ISEMPTY, bez stosowania funkcji Excel VBA ISEMPTY możemy faktycznie przetestować komórkę.
Na przykład spójrz na poniższy kod.
Kod:
Sub IsEmpty_Example3 () If Range („B2”). Value = „” Then Range („C2”). Value = „No Update” Else Range („C2”). Value = „Collected Updates” End If End Sub
Wiersz kodu Zakres („B2 ″). Wartość =” ” oznacza, czy komórka B2 jest pusta, czy nie.
Podwójne cudzysłowy („”) reprezentują pustą komórkę lub nie, jeśli pusty wynik to PRAWDA lub FAŁSZ.