Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Prüfen, Bereich leer ist

Prüfen, Bereich leer ist
Franz
Hallo zusammen,
mit select habe ich einen Bereich ausgewählt.
Mit welchem Befehl kann man prüfen, ob der gesamte Bereich leer ist. Formeln usw. können drin sein.
Nochmals vielen Dank!
Franz Kupfer
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Prüfen, Bereich leer ist
12.10.2010 21:50:09
fcs
Hallo Franz,
mit dem folgenden Makro kannst du prüfen, ob alle Zellen im selektierten Bereich leer sind.
Gruß
Franz
Sub CheckobEmpty()
Dim Bereich As Range
Set Bereich = Selection
If Not Bereich.Cells.Count = Application.WorksheetFunction.CountBlank(Bereich) Then
MsgBox "Im selektierten Bereich sind nicht alle Zelle leer", vbOKOnly, _
"Check-Ob-Leer"
Else
MsgBox "Im selektierten Bereich sind alle Zelle leer", vbOKOnly, _
"Check-Ob-Leer"
End If
End Sub

Anzeige
AW: Prüfen, Bereich leer ist
12.10.2010 22:07:41
Franz
Hallo Franz,
umstellen wie dargestellt ergibt dann auch noch einen Sinn:
Dim Bereich2 As Range
Set Bereich2 = Selection
If Bereich2.Cells.Count = Application.WorksheetFunction.CountBlank(Bereich2) Then
GoTo weiter2:
Else
End If
Ich will nämlich überspringen, wenn der Bereich leer ist.
Wäre das Ok?
Vielen Dank für Deine Hilfe!
Gruß
Franz Kupfer
Anzeige
AW: Prüfen, Bereich leer ist
14.10.2010 02:42:37
fcs
Hallo Franz,
im Prinzip ist das korrekt.
Man kann aber auch auch auf ungleiche Werte prüfen. Die bei leeren Zellen zu überspringenden Anweisungen stehen dann zwischen If und End If.
Die beiden nachfolgenden ersten beiden Beispiele sind in der Wirkung identisch. Du kannst bei erfüllter Bedingung ggf. aber auch direkt die Prozedur wieder verlassen/beenden.
Gruß
Franz
Sub aaTest1()
Dim Bereich2 As Range
Set Bereich2 = Selection
If Bereich2.Cells.Count = Application.WorksheetFunction.CountBlank(Bereich2) Then
'Bereich ist leer
GoTo weiter2
Else
'Bereich ist nicht leer
'Code wenn nicht leer
End If
weiter2:
'weitere Anweisungen nachdem gefüllter Bereich bearbeitet wurde
End Sub
Sub aaTest2()
Dim Bereich2 As Range
Set Bereich2 = Selection
If Bereich2.Cells.Count  Application.WorksheetFunction.CountBlank(Bereich2) Then
'Bereich ist nicht leer
'Code wenn nicht leer
End If
'weitere Anweisungen nachdem gefüllter Bereich bearbeitet wurde
End Sub
'oder wenn bei leerem Bereich gar nichts mehr gemacht werden soll
Sub aaTest2()
Dim Bereich2 As Range
Set Bereich2 = Selection
If Bereich2.Cells.Count  Application.WorksheetFunction.CountBlank(Bereich2) Then Exit Sub
'Bereich ist nicht leer
'Code wenn nicht leer
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Prüfen, ob ein Bereich in Excel leer ist


Schritt-für-Schritt-Anleitung

Um zu prüfen, ob ein Bereich in Excel leer ist, kannst Du VBA verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung, um dies zu erreichen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeineArbeitsmappe)“, wähle „Einfügen“ und dann „Modul“.

  3. Füge den folgenden Code ein:

    Sub CheckobEmpty()
       Dim Bereich As Range
       Set Bereich = Selection
       If Not Bereich.Cells.Count = Application.WorksheetFunction.CountBlank(Bereich) Then
           MsgBox "Im selektierten Bereich sind nicht alle Zellen leer", vbOKOnly, _
           "Check-Ob-Leer"
       Else
           MsgBox "Im selektierten Bereich sind alle Zellen leer", vbOKOnly, _
           "Check-Ob-Leer"
       End If
    End Sub
  4. Schließe den VBA-Editor: Drücke ALT + Q.

  5. Wähle den Bereich aus: Markiere den Bereich, den Du überprüfen möchtest.

  6. Führe das Makro aus: Gehe zu „Entwicklertools“ > „Makros“ und wähle CheckobEmpty aus.

Mit diesem einfachen VBA-Skript kannst Du effektiv prüfen, ob ein Bereich leer ist.


Häufige Fehler und Lösungen

  • Fehler: "Fehler beim Kompilieren: Erwartet: End Sub"

    • Lösung: Stelle sicher, dass Du den gesamten Code korrekt eingefügt hast. Überprüfe, ob am Ende des Codes das End Sub steht.
  • Fehler: "Der gewählte Bereich enthält formatierten Text"

    • Lösung: Der Code prüft nur, ob die Zellen leer sind. Formeln oder formatierter Text werden nicht gezählt. Verwende CountBlank, um leere Zellen zu zählen.

Alternative Methoden

Neben VBA gibt es auch Möglichkeiten, dies direkt in Excel zu überprüfen:

  1. Mit der Funktion COUNTBLANK: Du kannst die Anzahl der leeren Zellen in einem Bereich mit der Funktion =COUNTBLANK(A1:A10) herausfinden. Wenn das Ergebnis gleich der Anzahl der Zellen im Bereich ist, ist der Bereich leer.

  2. Mit einer WENN-Bedingung: Du kannst auch eine Formel wie =WENN(COUNTBLANK(A1:A10)=ANZAHL(A1:A10); "Bereich ist leer"; "Bereich ist nicht leer") verwenden.


Praktische Beispiele

Beispiel 1: VBA-Makro zur Prüfung eines definierten Bereichs

Sub CheckBereich()
    Dim Bereich As Range
    Set Bereich = Range("A1:A10")
    If Bereich.Cells.Count = Application.WorksheetFunction.CountBlank(Bereich) Then
        MsgBox "Der Bereich A1:A10 ist leer."
    Else
        MsgBox "Der Bereich A1:A10 ist nicht leer."
    End If
End Sub

Beispiel 2: Excel-Formel

Gib in eine Zelle ein:

=WENN(COUNTBLANK(A1:A10)=ANZAHL(A1:A10); "Bereich ist leer"; "Bereich ist nicht leer")

Beide Methoden helfen Dir, schnell zu erkennen, ob ein Bereich leer ist.


Tipps für Profis

  • Nutze Application.WorksheetFunction.CountBlank für verbesserte Performance, wenn Du große Datenmengen prüfst.
  • Kombiniere VBA mit Excel-Funktionen, um komplexere Prüfungen durchzuführen.
  • Verwende Option Explicit am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich prüfen, ob ein Bereich nur bestimmte Zellen leer hat? Du kannst die Funktion COUNTBLANK auf spezifische Zellen anwenden, um nur die leeren Zellen in einem bestimmten Bereich zu zählen.

2. Funktioniert dies in Excel 365? Ja, das VBA-Skript und die Formeln funktionieren in allen aktuellen Excel-Versionen, einschließlich Excel 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige