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

VBA: Wenn nicht leer, dann

Forumthread: VBA: Wenn nicht leer, dann

VBA: Wenn nicht leer, dann
23.01.2013 10:17:47
Stephan
Hallo.
Wie jeden Tag um die Uhrzeit eine kurze Frage ;)
Falls KEIN Bild in meinem Frame zu sehen ist, so soll das Sub beendet werden.
Für den umgekehrten fall ist das ja ganz einfach:

If Userform1.Frame1.Picture Is Nothing Then Exit Sub

Nur wie beschreibe ich "Falls ein Bild vorhanden ist, dann..."?
(" Nothing" oder "Is Not Nothing") hab ich schon probiert

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Wenn nicht leer, dann
23.01.2013 10:36:40
guentherh
If not (Userform1.Frame1.Picture Is Nothing) Then Exit Sub
Gruß,
Günther

AW: VBA: Wenn nicht leer, dann
23.01.2013 10:37:11
Klaus
Hi Stephan,
ungetestet:
If not(Userform1.Frame1.Picture Is Nothing) Then Exit Sub

NOT dreht dein Boolean-Ergebniss um.
Grüße,
Klaus M.vdT.

Anzeige
Danke euch beiden, funktioniert wunderbar owT
23.01.2013 10:48:48
Stephan
Super!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

VBA: Wenn nicht leer, dann


Schritt-für-Schritt-Anleitung

Um in VBA zu prüfen, ob eine Zelle oder ein Objekt nicht leer ist, kannst du die folgende Struktur verwenden:

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel.
  2. Erstelle ein neues Modul: Klicke mit der rechten Maustaste auf "VBAProject", wähle "Einfügen" und dann "Modul".
  3. Gib den VBA-Code ein: Nutze die folgende Struktur:

    If Not (Userform1.Frame1.Picture Is Nothing) Then
       ' Dein Code hier
    End If

    Diese Struktur prüft, ob das Bild im Frame nicht leer ist, bevor der Code ausgeführt wird.


Häufige Fehler und Lösungen

  • Fehler: "Typenkonflikt"

    • Lösung: Stelle sicher, dass das Objekt, das du überprüfst, tatsächlich ein Bild ist. Falsche Objekttypen können diesen Fehler verursachen.
  • Fehler: "Objekt nicht gefunden"

    • Lösung: Überprüfe, ob die Referenz auf das Userform korrekt ist und dass das Frame tatsächlich existiert.

Alternative Methoden

Eine alternative Methode, um zu prüfen, ob eine Zelle oder ein Objekt nicht leer ist, besteht darin, die IsEmpty-Funktion zu verwenden. Dies funktioniert besonders gut für Zellen:

If Not IsEmpty(Sheet1.Range("A1").Value) Then
    ' Dein Code hier
End If

Diese Methode ist besonders nützlich, wenn du mit Excel-Zellen arbeitest und überprüfen möchtest, ob sie ungleich leer sind.


Praktische Beispiele

Hier sind einige praktische Beispiele zur Verwendung von vba wenn zelle nicht leer dann:

  1. Überprüfung eines Bildes in einem Frame:

    If Not (Userform1.Frame1.Picture Is Nothing) Then
       MsgBox "Bild ist vorhanden."
    Else
       MsgBox "Kein Bild vorhanden."
    End If
  2. Überprüfung einer Zelle:

    If Not IsEmpty(Sheet1.Range("B2").Value) Then
       MsgBox "Zelle B2 ist nicht leer."
    Else
       MsgBox "Zelle B2 ist leer."
    End If

Tipps für Profis

  • Verwende vba ifnot für komplexere Bedingungen: Du kannst mehrere Bedingungen kombinieren, um spezifische Prüfungen durchzuführen.

  • Nutze Debug.Print: Um Fehler schneller zu identifizieren, kannst du Debug.Print verwenden, um den Wert von Variablen während der Ausführung zu überprüfen.

  • Strukturierte Programmierung: Halte deinen Code übersichtlich und gut kommentiert, um die Lesbarkeit zu verbessern und späteres Debugging zu erleichtern.


FAQ: Häufige Fragen

1. Wie benutze ich vba if not like? Du kannst If Not Like verwenden, um Muster in Strings zu überprüfen. Beispiel:

If Not (Sheet1.Range("A1").Value Like "Test*") Then
    ' Dein Code hier
End If

2. Was ist der Unterschied zwischen Is Nothing und IsNot Nothing? Is Nothing prüft, ob das Objekt leer ist, während Is Not Nothing überprüft, ob das Objekt existiert. Beide sind nützlich, um sicherzustellen, dass dein Code nur ausgeführt wird, wenn das Objekt tatsächlich vorhanden ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige