Diagramm in UserForm anzeigen: Schritt-für-Schritt-Anleitung und Tipps
Schritt-für-Schritt-Anleitung
Um ein Diagramm in einer UserForm anzuzeigen, kannst du die folgenden Schritte befolgen:
-
UserForm erstellen:
- Öffne den VBA-Editor (Alt + F11).
- Füge eine neue UserForm hinzu und platziere ein Bildsteuerelement (Image) auf der UserForm.
-
VBA-Code einfügen:
- Füge den folgenden Code in das Modul ein:
Public Dateiname As String
Sub Bild_Anzeigen(strTab As String, strDia As String)
Dim Diagramm As Object
Dim dblBreite As Double
Dim dblHoehe As Double
Set Diagramm = Worksheets(strTab).ChartObjects(strDia).Chart
With Diagramm.Parent
dblBreite = .Width
dblHoehe = .Height
.Height = dblHoehe * 2
.Width = dblBreite * 2
Dateiname = ThisWorkbook.Path & Application.PathSeparator & "diagramm.bmp"
End With
Diagramm.Export Filename:=Dateiname, FilterName:="bmp"
With UserForm8
.Image1.Picture = LoadPicture(Dateiname)
.Image1.Width = dblBreite * 2
.Image1.Height = dblHoehe * 2
.Width = .Image1.Width + 15
.Height = .Image1.Height + 40 + .cmdOK.Height
End With
Kill Dateiname
UserForm8.Show
End Sub
-
Button zur Anzeige des Diagramms:
- Erstelle einen Button in deiner Excel-Oberfläche und verlinke ihn mit der
Bild_Anzeigen
-Subroutine.
Häufige Fehler und Lösungen
-
Fehler: "Variable nicht definiert"
- Stelle sicher, dass die Variable
Dateiname
als Public
deklariert ist, wie im obigen Code.
-
Fehler: "Ungültiges Bild"
- Überprüfe, ob das Diagramm korrekt exportiert wird und der Dateiname korrekt gesetzt ist.
-
Diagramm unscharf oder verzerrt
- Stelle sicher, dass der
PictureSizeMode
des Bildsteuerelements auf fmPictureSizeModeZoom
eingestellt ist.
Alternative Methoden
Anstatt ein Bild zu exportieren, könntest du auch das Diagramm direkt in der UserForm zeichnen. Dies ist jedoch komplexer und erfordert mehr Kenntnisse in VBA.
' Beispiel für das Zeichnen eines Diagramms
Sub DiagrammInUserformZeichnen()
' Hier könnte ein weiterer Code folgen
End Sub
Praktische Beispiele
Hier ist ein einfaches Beispiel, das zeigt, wie du ein Diagramm aus einer bestimmten Tabelle in der UserForm darstellst:
Sub Button1_Click()
Bild_Anzeigen "Tabelle1", "Diagramm1"
End Sub
Tipps für Profis
FAQ: Häufige Fragen
1. Frage
Wie kann ich mehrere Diagramme in der gleichen UserForm anzeigen?
Antwort
Du kannst die Bild_Anzeigen
-Subroutine für verschiedene Diagramme aufrufen, indem du unterschiedliche Parameter übergibst.
2. Frage
Kann ich die UserForm im Vollbildmodus anzeigen?
Antwort
Ja, du kannst die Größe der UserForm auf die Bildschirmauflösung einstellen, indem du UserForm8.Width = Application.Width
und UserForm8.Height = Application.Height
verwendest.