Registriert seit: 01.02.2016
Version(en): 2007
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?
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi,
darf es auch eine Formellösung sein?
=ANZAHLLEEREZELLEN(dein Bereich)
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
07.02.2016, 12:12
(Dieser Beitrag wurde zuletzt bearbeitet: 07.02.2016, 12:12 von schauan.)
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
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)