Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

XL-VBA - Fehler 481: Ungültiges Bild

Forumthread: XL-VBA - Fehler 481: Ungültiges Bild

XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 11:38:26
Stephan
Hallo.
Erstmal ein großes Lob an euch, ihr habt mir mit verschiedenen Excelproblemen und bei entsprechender Recherche schon sehr weitergeholfen.
Vorab:
Googlesuche wurde wegen meinem Problem schon stundenlang benutzt
Mein Problem:
Ich erstelle momentan eine Userform, die verschiedene Charts darstellen soll. Hierzu speichere Ich das Chart aus dem Worksheet als BMP und lade die BMP-Datei dann in den entsprechenden Frame. Dieser Vorgang wird analog für verschiedenste Charts (alle haben die gleiche Form, Art und Größe, nur die Daten sind andere) durchgeführt. Die BMP- Datei ist dabei immer die gleiche, da sie nur als Zwischenspeicher dient.
Bis gestern lief das alles optimal, dieser Vorgang wird bisher ungefähr 10-15 mal ausgeführt.
Nun habe ich weitergearbeitet, den Code für die Integration eines weiteren Charts hinzugefügt, das Programm getestet und auf einmal kommt diese Fehlermeldung:
Laufzeitfehler '481': ungültiges Bild
Der Fehler tritt aber nicht, wie erwartet, bei dem neuen Codeteil auf, sondern gleich beim ersten Chart. Einige meiner Lösungsversuche haben entweder garnix gebracht oder nur bewirkt, dass der gleiche Fehler an einer anderen Stelle weiter unten im Programmtext aufgetreten ist.
Was ich bisher versucht habe:
- Programm- und Windowsneustart - kein Erfolg
- betroffene Zeile neugeschrieben - Fehler tritt an anderer Stelle wieder auf
- Größe und Name des Charts geändert - manchmal hats was gebracht, manchmal nicht
Code: Jeweils die dritte Zeile ist die, welche beim debugging markiert wird
Dateiname = ThisWorkbook.Path & Application.PathSeparator & "diagramm.gif"
Sheets("AUSW_Sparte").ChartObjects("QKZ").Chart.Export Filename:=Dateiname, FilterName:="GIF"
KZ_Sparte_QKZ.Picture = LoadPicture(Dateiname)
Dateiname = ThisWorkbook.Path & Application.PathSeparator & "diagramm.bmp"
Sheets("AUSW_Sparte").ChartObjects("PPM").Chart.Export Filename:=Dateiname, FilterName:="BMP"
KZ_Sparte_PPM.Picture = LoadPicture(Dateiname)
Weiß einer woran das liegt, wo die Ursache liegt, wo ich diese zu suchen habe, oder hat irgendjemand andere Vorschläge um dieses Problem zu beheben?
PS: Adins, etc. gibt es meines Wissens keine zusätzlichen.

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 11:48:04
Rudi
Hallo,
1x gif und 1x bmp. Beabsichtigt?
Gruß
Rudi

AW: XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 11:53:31
Stephan
Ich benutze ausschließlich bmp (wie gesagt: gleiche Datei).
In dem Codebeispiel is ne gif mit dabei, weil ich wissen wollte, ob das Problem nur bei BMP auftritt, tut es aber nicht. Der eigentliche Code beinhaltet keine GIF, hab ich übersehen.
Tritt der Fehler auf und versuch ich die entsprechende Bilddatei zu öffnen, merk ich, dass die nicht richtig exportiert wurde... (0kb- Datei)
Habs auch grade mit nem Application.Wait nach dem Export versucht... bringt auch nix

Anzeige
AW: XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 12:25:00
Stephan
Themo immer noch offen, habe den Haken vergessen zu setzen.
Hab Excel neugestartet und siehe da: Der Fehler kommt wieder an ner anderen Stelle des Programmtextes -.-

AW: XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 13:03:06
Stephan
Die BMP- Datei jedes mal löschen bringt auch nix...
Ich hoffe Ihr könnt mir noch weiterhelfen. Wäre sehr wichtig, da es hier um nen Teil meiner Diplomarbeit geht... :(

Anzeige
AW: XL-VBA - Fehler 481: Ungültiges Bild
16.01.2013 13:06:20
Stephan
...und wieder vergessen das häkchen zu setzten.
Ich entschuldige mich für mein ständiges posten und wart jetz geduldig auf ne Antwort :)

LÖSUNG
16.01.2013 14:08:19
Stephan
die Lösung ist keine Lösung, sondern eher eine Umgehung eines Bugs:
Das zu exportierende Chart muss vor Export ausgewählt werden
Ein einfaches Chart.Activate- Ereignis vor der export- Methode löst mein Problem
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

XL-VBA - Fehler 481: Ungültiges Bild beheben


Schritt-für-Schritt-Anleitung

Um den Laufzeitfehler '481: ungültiges Bild' in Excel VBA zu beheben, folge diesen Schritten:

  1. Chart auswählen: Stelle sicher, dass das Chart vor dem Export ausgewählt ist. Dies kannst du erreichen, indem du das Chart mit .Activate aktivierst.

    Sheets("AUSW_Sparte").ChartObjects("QKZ").Chart.Activate
  2. Exportiere das Chart: Verwende die Export-Methode, um das Bild im gewünschten Format (z.B. BMP) zu speichern.

    Dateiname = ThisWorkbook.Path & Application.PathSeparator & "diagramm.bmp"
    Sheets("AUSW_Sparte").ChartObjects("QKZ").Chart.Export Filename:=Dateiname, FilterName:="BMP"
  3. Lade das Bild: Verwende LoadPicture, um das Bild in die Userform zu laden.

    KZ_Sparte_QKZ.Picture = LoadPicture(Dateiname)
  4. Fehlerüberprüfung: Stelle sicher, dass die exportierte Datei nicht leer ist (0 KB). Wenn dies der Fall ist, überprüfe den Exportprozess.


Häufige Fehler und Lösungen

  • Fehler: 0 KB Datei nach Export

    • Lösung: Überprüfe, ob das Chart tatsächlich Daten enthält und aktiv ist, bevor du es exportierst.
  • Fehler tritt an anderer Stelle auf

    • Lösung: Wenn der Fehler nach dem Überarbeiten des Codes an einer neuen Stelle auftritt, liegt möglicherweise ein ähnliches Problem wie beim ersten Chart vor. Auch hier ist es wichtig, das Chart vor dem Export auszuwählen.
  • Aktualisierung von Windows

    • Hinweis: Bei Verwendung von Windows 11 kann es zu spezifischen Komplikationen kommen. Überprüfe die Kompatibilität und ob alle Updates installiert sind.

Alternative Methoden

Falls das Problem weiterhin besteht, kannst du alternative Ansätze in Betracht ziehen:

  1. Verwendung anderer Bildformate: Teste, ob das Problem auch bei JPEG oder PNG auftritt.
  2. Direktes Zeichnen: Statt das Bild zu laden, kannst du versuchen, das Chart direkt als Bildobjekt in die Userform zu zeichnen.

Praktische Beispiele

Hier ein einfaches Beispiel, wie du ein Chart exportierst und in eine Userform lädst:

Sub ChartExportieren()
    Dim Dateiname As String
    Dateiname = ThisWorkbook.Path & Application.PathSeparator & "diagramm.bmp"

    ' Chart aktivieren
    Sheets("AUSW_Sparte").ChartObjects("QKZ").Chart.Activate

    ' Chart exportieren
    Sheets("AUSW_Sparte").ChartObjects("QKZ").Chart.Export Filename:=Dateiname, FilterName:="BMP"

    ' Bild laden
    KZ_Sparte_QKZ.Picture = LoadPicture(Dateiname)
End Sub

Tipps für Profis

  • Verwende Application.Wait: Manchmal hilft es, dem Programm etwas Zeit zu geben, bevor du das Bild lädst. Füge Application.Wait nach dem Export ein.

  • Debugging: Nutze Debug.Print um den Status deines Programms zu verfolgen und herauszufinden, wo genau der Fehler auftritt.

  • Dokumentation: Halte gute Dokumentation deiner Schritte bereit, besonders wenn es um wichtige Projekte wie deine Diplomarbeit geht. So kannst du später schneller auf Lösungen zugreifen.


FAQ: Häufige Fragen

1. Warum tritt der Fehler '481: ungültiges Bild' auf?
Der Fehler tritt auf, wenn das Bild nicht korrekt exportiert wurde oder das Chart nicht ausgewählt ist.

2. Was kann ich tun, wenn die exportierte Datei 0 KB groß ist?
Überprüfe, ob das Chart aktiv und korrekt gefüllt ist. Manchmal kann ein Neustart von Excel helfen, oder die Überprüfung der Excel-Version auf Updates.

3. Ist dieser Fehler spezifisch für Windows 11?
Der Fehler kann auf verschiedenen Windows-Versionen auftreten, einschließlich Windows 11. Es ist jedoch wichtig, sicherzustellen, dass alle Updates installiert sind, um mögliche Komplikationen zu vermeiden.

4. Wie kann ich meine Diplomarbeit schützen, wenn ich mit Excel arbeite?
Stelle sicher, dass du regelmäßig Backups machst und deine Arbeit in verschiedenen Formaten speicherst.

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