Anzahl der nicht leeren Zellen in einem Excel-Bereich per VBA-Makro feststellen
Sie möchten in einem Makro feststellen, wie viele Zellen in einer Spalte einen Inhalt besitzen (also nicht leer sind). Natürlich können Sie das über eine Schleife in VBA erledigen. Einfacher ist es aber, wenn Sie die Aufgabe durch eine Excel-Funktion durchführen. Die Excel-Funktion ANZAHL ist genau für diesen Zweck ausgelegt. Setzen Sie diese Funktion in einem Makro ein und übertragen Sie das Ergebnis in eine Variable oder eine Zelle.
Um die Anzahl aller verwendeten Zellen in Spalte B zu ermitteln, verwenden Sie das folgende Makro:
Sub ZaehleSpalte()
ActiveCell.Value = WorksheetFunction.Count(Columns(2))
End Sub
Um das Makro einzugeben, drücken Sie in Excel die Tastenkombination ALT F11, um den VBA-Editor aufzurufen. Wählen Sie im VBA-Editor das Kommando EINFÜGEN - MODUL und geben Sie das Makro ein. Um das Makro zu starten, aktivieren Sie in Excel die Tastenkombination ALT F8. Die beiden Tastenkombinationen funktionieren in allen Excel-Versionen.
Falls Sie das Ergebnis der Funktion in eine feste Zelle (beispielsweise Zelle A1) schreiben möchten, ersetzen Sie den Ausdruck AKTIVECELL durch RANGE("A1") und verwenden Sie die Zelladresse Ihrer Wahl.
Welche Spalte addiert werden soll, definieren Sie durch den Parameter hinter Columns. Die Spalten werden von links nach rechts durchnummeriert, Spalte A besitzt die Nummer 1.
Die folgende Abbildung zeigt, wie das Ergebnis aussieht, wenn Sie die Funktion in einer Tabelle starten: