Hallöchen,
ich habe abwechselnd Text und Zellen ohne Inhalt in meinen Spalten auf dem Exceltabellenblatt.
Die Anzahl der Leerzellen bestimme ich bislang so:
Debug.Print Cells(ActiveCell.Row, 2).End(xlDown).Row - ActiveCell.Row
Geht das auch kürzer?
Hi,
darf es auch eine Formellösung sein?
=ANZAHLLEEREZELLEN(dein Bereich)
Hallöchen,
anbei mal eine komplizierte und eine einfache Variante. Die einfache setzt Günters Vorschlag mit VBA-Mitteln um, ist allerdings vor Version 2007 nicht anwendbar.
Modul Modul1Sub LeereZellenZaehlen1()
'Hinweis: SpecialCells beruecksichtigt nur Zellen im benutzten Bereich.
' Daher hier der "Hilfseintrag" x in der letzten Zelle des
' geprueften Bereichs
'Wenn letzte Zelle im geprueften Bereich nicht leer ist, dann
If Not IsEmpty(Range("A10")) Then
'Leere zaehlen und Meldung ausgeben
MsgBox ActiveSheet.Range("A1:A10").SpecialCells(xlCellTypeBlanks).Count
'Anderenfalls
Else
'Hilfseintrag setzen
Range("A10") = "x"
'Leere zaehlen, 1 addieren und Meldung ausgeben
MsgBox ActiveSheet.Range("A1:A10").SpecialCells(xlCellTypeBlanks).Count + 1
'Hilfseintrag entfernen
Range("A10") = ""
'Wenn letzte Zelle im geprueften Bereich nicht leer ist, dann
End If
End Sub
'-------------------------------------------------------------------------
Sub LeereZellenZaehlen2()
'Tabellenfunktion zum Zaehlen leerer Zellen verwenden (ab Version 2007)
MsgBox WorksheetFunction.CountBlank(Range("A1:A10"))
End Sub