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

Forumthread: Prüfen ob Bild vorhanden ist

Prüfen ob Bild vorhanden ist
Gunter
Hallo Zusammen,
ich möchte prüfen ob ein Bild (Picture 1) überhaupt in der Tabelle vorhanden ist.
Wie stelle ich das denn am Besten an, möglichst einfach.
Für zweckdienliche Hinweise herzlichen Dank.
Gruss
Gunter
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Prüfen ob Bild vorhanden ist
17.09.2009 13:54:03
Rudi
Hallo,
Sub tt()
Dim o As Object
On Error Resume Next
Set o = Sheets(1).Pictures("Picture 1")
On Error GoTo 0
MsgBox IIf(o Is Nothing, "nicht ", "") & "da"
End Sub

Gruß
Rudi
AW: Prüfen ob Bild vorhanden ist
17.09.2009 14:05:38
ptonka
Hallo Rudi,
Bild da, aber wo?
Ich gaube, der Fragesteller wollte die Grafik auch im Blatt finden.
Wie wäre es mit dieser Ergänzung:
Sub tt()
Dim o As Object
On Error Resume Next
Set o = Sheets(1).Pictures("Picture 1")
On Error GoTo 0
MsgBox IIf(o Is Nothing, "nicht ", "") & "da"
Stelle = Sheets(1).Pictures("Picture 1").TopLeftCell.Address
Range(Stelle).Select
End Sub
Gruß,
Ptonka
Anzeige
dein Einwand
17.09.2009 14:14:51
Rudi
Hallo,
die Fage:
ich möchte prüfen ob ein Bild (Picture 1) überhaupt in der Tabelle vorhanden ist.

sonst nix!
Gruß
Rudi
dein Code
17.09.2009 14:20:13
Rudi
Hallo,
Stelle = Sheets(1).Pictures("Picture 1").TopLeftCell.Address
Range(Stelle).Select

das rennt aber in einen Fehler, falls das Pic nicht da ist.
Außerdem reicht
o.topleftcell.select
der Rest ist Mumpitz.
Gruß
Rudi
Anzeige
AW: Prüfen ob Bild vorhanden ist
17.09.2009 14:00:32
ptonka
Hallo Gunter,
mit diesem Code sollte es klappen:
Sub grafik_finden()
If ActiveSheet.Shapes("Picture 1").Visible = True Then
MsgBox "Grafik vorhanden!"
ActiveSheet.Shapes("Picture 1").Select
Stelle = ActiveSheet.Shapes("Picture 1").TopLeftCell.Address
Range(Stelle).Select
End If
If ActiveSheet.Shapes("Picture 1").Visible = False Then
ActiveSheet.Shapes("Picture 1").Visible = True
MsgBox "Grafik vorhanden!"
Stelle = ActiveSheet.Shapes("Picture 1").TopLeftCell.Address
Range(Stelle).Select
End If
End Sub
Gruß,
Ptonka
Anzeige
AW: Prüfen ob Bild vorhanden ist
17.09.2009 23:32:09
Gunter
Hallo Zusammen,
vielen Dank für eure Hilfe, die Tips helfen mir bestimmt. Komme erst morgen zum testen.
Gruss
Gunter
;
Anzeige
Anzeige

Infobox / Tutorial

Prüfen, ob ein Bild in Excel vorhanden ist


Schritt-für-Schritt-Anleitung

Um zu prüfen, ob ein Bild (z.B. "Picture 1") in einer Excel-Tabelle vorhanden ist, kannst Du den folgenden VBA-Code verwenden. Dieser Code zeigt eine Nachricht an, wenn das Bild nicht vorhanden ist, oder selektiert das Bild, wenn es gefunden wird.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub bild_pruefen()
       Dim o As Object
       On Error Resume Next
       Set o = Sheets(1).Pictures("Picture 1")
       On Error GoTo 0
       MsgBox IIf(o Is Nothing, "Bild nicht vorhanden.", "Bild vorhanden!")
       If Not o Is Nothing Then
           o.Select
       End If
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Drücke ALT + F8, wähle bild_pruefen und klicke auf Ausführen.

Mit diesem Code kannst Du einfach prüfen, ob das Bild vorhanden ist oder nicht.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 91: Objektvariable oder With-Blockvariable nicht festgelegt."

    • Lösung: Stelle sicher, dass das Bild tatsächlich "Picture 1" heißt. Ändere den Namen im Code entsprechend.
  • Fehler: "Das Bild wird nicht selektiert, obwohl es vorhanden ist."

    • Lösung: Überprüfe, ob das Bild in der aktiven Tabelle vorhanden ist. Wenn nicht, ändere den Sheets(1)-Teil im Code auf den entsprechenden Tabellennamen.

Alternative Methoden

Eine alternative Methode, um zu prüfen, ob Bilder in einer Excel-Datei vorhanden sind, ist die Verwendung von Shapes. Hier ist ein Beispiel:

Sub grafik_finden()
    If ActiveSheet.Shapes("Picture 1").Visible = True Then
        MsgBox "Grafik vorhanden!"
        ActiveSheet.Shapes("Picture 1").Select
    Else
        MsgBox "Bild nicht vorhanden."
    End If
End Sub

Dieser Code prüft, ob das Bild sichtbar ist und selektiert es, wenn es vorhanden ist.


Praktische Beispiele

  1. Bild in einer spezifischen Zelle prüfen: Wenn Du sicherstellen möchtest, dass das Bild in einer bestimmten Zelle platziert ist, kannst Du den Code anpassen, um die Adresse der Zelle zu überprüfen.

  2. Mehrere Bilder prüfen: Um mehrere Bilder zu prüfen, kannst Du eine Schleife verwenden, um die Namen der Bilder in einem Array zu speichern und sie nacheinander zu überprüfen.

Sub mehrere_bilder_pruefen()
    Dim bildNamen As Variant
    Dim i As Integer
    bildNamen = Array("Picture 1", "Picture 2", "Picture 3")

    For i = LBound(bildNamen) To UBound(bildNamen)
        If Not Sheets(1).Pictures(bildNamen(i)) Is Nothing Then
            MsgBox bildNamen(i) & " vorhanden."
        Else
            MsgBox bildNamen(i) & " nicht vorhanden."
        End If
    Next i
End Sub

Tipps für Profis

  • Fehlerbehandlung: Verwende On Error Resume Next, um Laufzeitfehler zu vermeiden, aber stelle sicher, dass Du danach On Error GoTo 0 verwendest, um die Fehlerbehandlung zurückzusetzen.

  • Namen von Bildern: Achte darauf, dass die Namen der Bilder in Excel keine Leerzeichen oder Sonderzeichen enthalten, um Probleme beim Zugriff zu vermeiden.

  • Komplexere Prüfungen: Du kannst auch Attribute wie Visible oder Locked verwenden, um festzustellen, ob das Bild nutzbar ist.


FAQ: Häufige Fragen

1. Wie kann ich prüfen, ob mehrere Bilder vorhanden sind?
Du kannst eine Schleife verwenden, um die Namen der Bilder in einem Array zu speichern und sie dann nacheinander zu überprüfen.

2. Was mache ich, wenn das Bild nicht angezeigt wird?
Stelle sicher, dass das Bild nicht ausgeblendet oder auf einer anderen Tabelle versteckt ist. Überprüfe auch, ob der Name des Bildes korrekt ist.

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