Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

WIe kann ich leere Zellen mit "select case" anspr.

Forumthread: WIe kann ich leere Zellen mit "select case" anspr.

WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 01:47:32
Kabas Enrico
HI !
die "" funktionieren nicht !
Hier der Code :

Do
Select Case ActiveCell.Value

Case "": Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
ZählerFrei = ZählerFrei + 1

..........blablabla

Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 03:25:58
Matthias Gößner

Hallo Enrico,
seltsam dein Problem. Bei Code:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Select Case Cells(1, 1).Value
Case "": MsgBox "Leer"
Case Else: MsgBox Cells(1, 1).Value
End Select
End Sub

...funktioniert das Ganze nämlich schon, und ich kann keinen Unterschied feststellen. Vielleicht sind Leerzeichen in der Zelle? Dann müsstest du diese durch die Trim()-Funktion eliminieren.

mfg, Matthias


Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 08:22:22
Kabas Enrico

Hi !
So sollte es funktionieren, aber "" kennt er nicht ! Fehlermeldung --> Index außerhalb des gültigen Bereiches !


Do
Select Case ActiveCell.Value


Case "": Frei(ZählerFrei) = Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
ZählerFrei = ZählerFrei + 1

Case "1": Frühschicht(ZählerFrühschicht) = Cells(ActiveCell.Row, 11).Value
ZählerFrühschicht = ZählerFrühschicht + 1


Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 08:22:50
Kabas Enrico

Hi !
So sollte es funktionieren, aber "" kennt er nicht ! Fehlermeldung --> Index außerhalb des gültigen Bereiches !


Do
Select Case ActiveCell.Value


Case "": Frei(ZählerFrei) = Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
ZählerFrei = ZählerFrei + 1

Case "1": Frühschicht(ZählerFrühschicht) = Cells(ActiveCell.Row, 11).Value
ZählerFrühschicht = ZählerFrühschicht + 1


Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 13:17:28
Nepumuk

Hallo Enrico,
diese Konstuktion mag VBA nicht:
Frei(ZählerFrei) = Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
was willst du damit erreichen?
Gruß
Nepumuk

Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 15:53:21
Kabas Enrico

Sorry, meite es so:

Do
Select Case ActiveCell.Value


Case "": Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
ZählerFrei = ZählerFrei + 1

Case "1": Frühschicht(ZählerFrühschicht) = Cells(ActiveCell.Row, 11).Value
ZählerFrühschicht = ZählerFrühschicht + 1

Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 16:40:34
Nepumuk

Hallo Enrico,
die Fehlermeldung kommt entweder von Frei(ZählerFrei) oder von Frühschicht(ZählerFrühschicht). Du sprichst im Programm den Index eines diese Felder an, den es nicht gibt.
Z.B. Dim Frei(1 to 31) und ZählerFrei ist aber 0.
Gruß
Nepumuk

Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 17:46:36
Enrico K.

Hi!
Habe einmal ZählerFrei auf 1 gesetzt, geht auch nicht

Das zweite Beispiel mit Frühschicht geht perfekt. Ich habe noch mehrere, die alle gehen, nur wenn die Zelle leer ist, komme ich nicht zurecht !


Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 17:53:39
Nepumuk

Hallo Enrico,
versuch mal fogendes. Mach mal aus der Zeile:
Case "": Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
zwei Zeilen und und schau, wenn der Fehler auftritt, welche Zeile gelb markiert ist. Dann melde dich wieder.
Gruß
Nepumuk

Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 18:00:02
Enrico K.

SO ?
Wenn ja, werden beide makiert !!


Do
Select Case ActiveCell.Value


Case "": Frei(ZählerFrei) = _
Cells(ActiveCell.Row, 11).Value

ZählerFrei = ZählerFrei + 1

Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 18:02:04
Nepumuk

Nee, so:
Case ""
Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value

Re: WIe kann ich leere Zellen mit "select case" anspr.
08.03.2003 20:14:41
Enrico K.

Hi !
Es wird nur die mittlere Teile gelb makiert !

Case ""
Frei(ZählerFrei) = Cells(ActiveCell.Row, 11).Value
ZählerFrei = ZählerFrei + 1

Re: WIe kann ich leere Zellen mit "select case" anspr.
09.03.2003 16:24:32
Enrico K.

Hallo !
Habe alles so gemacht wie du sagtest !
Hinter dem Plus vn "FREI" verbergen sich genau die richtigen Daten !
Bei "Zählerfrei" steht 51 !? Obwohl ich Dim Frei auf 50 gesetzt habe !

Schick mir wenn möglich deine email-Adresse, dann schicke ich dir das ganze mal zum Anschauen ! Wenn ich darf !

Anzeige
Re: WIe kann ich leere Zellen mit "select case" anspr.
09.03.2003 20:28:23
Nepumuk

Hallo Enrico,
meine Mailadresse verbirg sich als Link hinter meinem in blau dargestellten Namen in der Uberschrift (Beitrag von:....).
Aber jetzt ist der Fehler klar. Das Feld "Frei" hat als maximalen Index von dir fünfzig vorgegeben bekommen. Mit dem Wert der Variablen "ZählerFrei" willst du im Programm den einundfüfzigsten Index ansprechen. Das führt zum Laufzeitfehler 9 (da er wärend der Progammlaufzeit geschieht) "Index außerhalb des gültigen Bereichs". Jetzt musst du herausfinden, warum die Variable "ZählerFrei" über die fünfzig hinausläuft.
Gruß
Nepumuk

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Leere Zellen mit Select Case in Excel VBA ansprechen


Schritt-für-Schritt-Anleitung

Um leere Zellen in Excel mit der Select Case-Anweisung in VBA anzusprechen, kannst du folgende Schritte befolgen:

  1. Öffne den VBA-Editor in Excel (Alt + F11).

  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject", dann "Einfügen" > "Modul").

  3. Kopiere und füge den folgenden Code ein:

    Sub BeispielLeereZellen()
       Dim ZählerFrei As Integer
       ZählerFrei = 1
       Do
           Select Case ActiveCell.Value
               Case ""
                   Cells(ZählerFrei, 11).Value = Cells(ActiveCell.Row, 11).Value
                   ZählerFrei = ZählerFrei + 1
               Case "1"
                   Cells(ZählerFrei, 12).Value = Cells(ActiveCell.Row, 11).Value
                   ZählerFrei = ZählerFrei + 1
           End Select
           ActiveCell.Offset(1, 0).Select ' Nächste Zelle auswählen
       Loop Until IsEmpty(ActiveCell)
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus.


Häufige Fehler und Lösungen

  • Fehler: Index außerhalb des gültigen Bereichs

    • Ursache: Der Zähler (z.B. ZählerFrei) überschreitet die definierte Größe des Arrays. Stelle sicher, dass der Zähler nicht größer ist als die Anzahl der Zellen in deinem Array.
  • Fehler: Leerzeichen in Zellen

    • Lösung: Nutze die Trim()-Funktion, um unerwünschte Leerzeichen zu entfernen:
    Case Trim(ActiveCell.Value) = ""

Alternative Methoden

Eine alternative Methode, leere Zellen zu prüfen, ist die Verwendung von If-Anweisungen:

If IsEmpty(ActiveCell) Then
    ' Deine Logik hier
End If

Diese Methode kann einfacher zu verstehen sein, wenn du nur grundlegende Bedingungen prüfen möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du leere Zellen in Excel VBA ansprechen kannst:

  1. Einfaches Beispiel mit Select Case:

    Select Case ActiveCell.Value
       Case ""
           MsgBox "Zelle ist leer"
       Case Else
           MsgBox "Zelle hat Wert: " & ActiveCell.Value
    End Select
  2. Zählen der leeren Zellen in einem Bereich:

    Dim leerZellen As Integer
    leerZellen = 0
    For Each Zelle In Range("A1:A10")
       If IsEmpty(Zelle) Then
           leerZellen = leerZellen + 1
       End If
    Next Zelle
    MsgBox "Anzahl leerer Zellen: " & leerZellen

Tipps für Profis

  • Debugging: Nutze die Debug.Print-Anweisung, um Werte während der Ausführung deines Codes zu überwachen. Dies kann helfen, Fehler schneller zu identifizieren.

  • Verwende Option Explicit: Setze am Anfang deines Moduls Option Explicit, um sicherzustellen, dass alle Variablen deklariert werden. Dies hilft, Tippfehler und andere Probleme zu vermeiden.

  • Vermeide magische Zahlen: Verwende Konstanten oder benannte Bereiche, um den Code wartungsfreundlicher zu gestalten.


FAQ: Häufige Fragen

1. Wie kann ich leere Zellen in einer bestimmten Spalte ansprechen? Du kannst den Bereich anpassen, indem du in der Schleife nur die gewünschte Spalte durchgehst, z.B. Range("B1:B10").

2. Was kann ich tun, wenn mein Code nicht funktioniert, obwohl alles korrekt aussieht? Überprüfe, ob du die richtigen Zellen und Indizes verwendest. Nutze Debugging-Tools in VBA, um den Code Schritt für Schritt durchzugehen.

3. Gibt es eine Möglichkeit, leere Zellen in Excel automatisch zu formatieren? Ja, du kannst bedingte Formatierung nutzen, um leere Zellen hervorzuheben. Gehe zu "Start" > "Bedingte Formatierung" > "Neue Regel" und wähle "Formel zur Ermittlung der zu formatierenden Zellen verwenden".

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