Thomas Risi Softwareentwicklung
Addins - Datenbanklösungen - Komponenten - RTDServer - WebServices
Chart2Image (2)
Immer wieder Thema in den diversen Foren ... Wie stelle ich ein Diagramm einer Tabelle in einer UserForm dar?
Hier eine API-Lösung, die die Charts zuerst in das Clipboard und dann in eine UserForm lädt.
Quellcode für ein Klassenmodul CChart2Image ...
Option Explicit
Public Sub Insert(chrt As Excel.Chart, img As Object)
On Error Resume Next
Dim myPath$: myPath = TempDir + chrt.Name + ".jpg"
chrt.Export myPath, "JPG"
img.Picture = LoadPicture(myPath)
img.PictureSizeMode = 1
Kill myPath
End Sub
Private Function TempDir() As String
Dim Path$: Path = Environ$("TEMP")
If Path = "" Then
Path = Environ$("TMP")
If Path = "" Then Path = "C:\Temp"
End If
If Right$(Path, 1) <> "\" Then Path = Path & "\"
TempDir = Path
End Function
Quellcode für UserForm mit Image1 ...
Option Explicit
Dim c2i As cChart2Image
Private Sub UserForm_Initialize()
Set c2i = New cChart2Image
c2i.Insert Worksheets("Tabelle1").ChartObjects(1).Chart, Me.Image1
End Sub
Private Sub UserForm_Terminate()
Set c2i = Nothing
End Sub
© 2001 -
by Thomas Risi