Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Abbruch für "ErsteLeereZelle" | Herbers Excel-Forum


Betrifft: Abbruch für "ErsteLeereZelle" von: Hans
Geschrieben am: 10.01.2010 20:59:29

Hallo .. kann mir jemand helfen eine Abbruchbedingung für folgendes Skript zu finden?

Set ErsteLeereZelle = Union(Range("Bereich1"), Range("Bereich2"), Range("Bereich3")). _
SpecialCells(xlCellTypeBlanks)(1)
    If ErsteLeereZelle Is Nothing Then
        MsgBox "keine Leerzellen gefunden"
        Else
...
Das Problem ist das wenn keine Zelle mehr frei ist bringt das Programm den Fehler

"Laufteitfehler 1004
Keine Leere Zelle gefunden"

cu

Hans

  

Betrifft: AW: Abbruch für "ErsteLeereZelle" von: Daniel
Geschrieben am: 10.01.2010 21:07:48

Hi

z.B. If DeinZellbereich.Cells.Count = Worksheetfunction.CountA(DeinZellbeich) Then Msgbox "nix leer"

Gruß, Daniel


  

Betrifft: AW: Abbruch für "ErsteLeereZelle" von: Hans
Geschrieben am: 10.01.2010 21:48:51

Das Programm bringt ja schon in der ersten Zeile einen Fehler .. zu der If Schleife kommt das Programm ja garnicht mehr.


  

Betrifft: AW: Abbruch für "ErsteLeereZelle" von: Daniel
Geschrieben am: 10.01.2010 21:57:04

Hi

die Prüfung muss ja auch vor die erste Zeile, dh. bevor SpecialCells eingetzt wird.
SpecialCells verursacht immer einen Fehler, wenn das gesuchte nicht gefunden wird.

alternativ kannst du auch einfach mit On Error Resume Next arbeiten, das bietet sich in diesem Fall gut an:

On Error Resume Next
Set ErsteLeereZelle = Range("DeinBereich").SpecialCells(xlcelltypeblanks)(1)
On Error Goto 0
If ErsteLeereZelle Is Nothing then ....

Gruß, Daniel


Beiträge aus den Excel-Beispielen zum Thema "Abbruch für "ErsteLeereZelle""