Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

VBA: Überprüfen ob Zellen leer sind

Betrifft: VBA: Überprüfen ob Zellen leer sind von: Hans Egonschmidt
Geschrieben am: 10.11.2014 17:36:15

Hallo,

ich habe da eine etwas knifflige Aufgabe und komme nicht so recht weiter:

Ich soll im Zellbereich A1:A20 überprüfen ob die Zellen leer sind und in einer Messagebox dann ausgeben, wie viele Schleifendurchläufe und wieviele leere Zellen es gibt.

Bin bis jetzt so angefangen:

Option Explicit

Sub ZellenLeer()
Dim range("A1:A20") As Inhalt
If IsEmpty(Inhalt) Then 
?
    MsgBox "Die Anzahl der Schleifendurchläufe: &?& &vblf&
Die Anzahl der leeren Zellen: &?&"
End Sub

So ist zumindest das Grundgerüst, ich weiß nicht wie ich die Schleifendurchläufe anzeige und in der Messagebox darstelle.

Bin dankbar für jede Hilfe :)

  

Betrifft: AW: VBA: Überprüfen ob Zellen leer sind von: Hajo_Zi
Geschrieben am: 10.11.2014 17:38:29

warum Schleife einfach CountIf

WorksheetFunction.CountIf(Range("a1:a20"),"")

GrußformelHomepage


  

Betrifft: AW: VBA: Überprüfen ob Zellen leer sind von: Hans Egonschmidt
Geschrieben am: 10.11.2014 18:13:09

Und wie sehe dann der ganze Code aus?
Ich soll das mit IsEmpty() lösen und dann per Schleifendurchlauf abzählen


  

Betrifft: AW: VBA: Überprüfen ob Zellen leer sind von: Hajo_Zi
Geschrieben am: 10.11.2014 18:17:05

für mein Code kommt nur noch msgbox davor.
Aber das willst Du ja nicht.

Gruß Hajo


  

Betrifft: AW: VBA: Überprüfen ob Zellen leer sind von: Gerd L
Geschrieben am: 10.11.2014 22:38:27

Hallo Hans -

wie Hajo schon schrieb, geht es hinsichtlich der Gesamtergebnisse ohne Schleife.

Sub Schulungsaufgabe()
   
   Dim lngLoopCount As Long
   Dim lngBlanksCount As Long
   Dim objCell As range
   
   For Each objCell In range("A1:A20")
        lngLoopCount = lngLoopCount + 1
        If IsEmpty(objCell) Then
            lngBlanksCount = lngBlanksCount + 1
            MsgBox "Schleifenzahl: " & lngLoopCount & vbLf & "Anzahl leere Zellen: " &  _
lngLoopCount
        End If
   Next
   
End Sub
Gruß Gerd


 

Beiträge aus den Excel-Beispielen zum Thema "VBA: Überprüfen ob Zellen leer sind"