VBA IsEmpty

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. PRAWDA lub FAŁSZ.

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 jest ona nazywana „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.

Możesz pobrać ten szablon VBA IsEmpty Excel tutaj - VBA IsEmpty Excel Template

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 „PF Status” jest pusta, potrzebujemy wartości „No Update”, a jeśli jest jakakolwiek wartość, potrzebujemy wartości „Collected Updates”.

Pamiętaj, że tutaj nie potrzebujemy domyślnego wyniku TRUE lub FALSE. Potrzebujemy tutaj własnych wyników, aby mieć własne, musimy użyć programu Excel VBA ISEMPTY z warunkiem IF.

Krok 1: Otwórz warunek IF .

Kod:

 Sub IsEmpty_Example2 () Jeśli End Sub 

Krok 2: W warunku IF otwórz funkcję ISEMPTY .

Kod:

 Sub IsEmpty_Example2 () If IsEmpty (End Sub 

Krok 3: Pierwszy test logiczny polega na tym , że wartość komórki B2 jest pusta lub nie.

Kod:

 Sub IsEmpty_Example2 () If IsEmpty (Range ("B2"). Value) Then End Sub 

Krok 4: Jeśli test logiczny w programie Excel vba jest PRAWDA, tj. Jeśli komórka jest pusta, potrzebujemy wyniku jako „ Brak aktualizacji ” w komórce C2.

Kod:

 Sub IsEmpty_Example2 () If IsEmpty (Range ("B2"). Value) Then Range ("C2"). Value = "No Update" End Sub 

Krok 5: Jeśli test logiczny jest FAŁSZ, potrzebujemy wyniku w komórce C2 jako „ Zebrane aktualizacje ”.

Kod:

 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

We have an alternative to ISEMPTY function, without applying the excel VBA ISEMPTY function we can actually test the cell.

For an example look at the below code.

Code:

 Sub IsEmpty_Example3() If Range("B2").Value = "" Then Range("C2").Value = "No Update" Else Range("C2").Value = "Collected Updates" End If End Sub 

The line of code Range(“B2″).Value = ” ” means whether the cell B2 cell is equal to empty or not.

Double Quotes (“ ”) represents an empty cell or not if the empty result is TRUE or else FALSE.