Hi Stefan,
da haste dir was relativ schwieriges rausgepickt. Nagut, ich hab dir ein beispiel gebastelt, daran kannst du ja üben.
Du brauchst im Tabellenblatt eine Schaltfläche und die Daten für das Diagramm. Ich habe den Makrocode auf den Bereich A1:B12 abgestimmt, also bastele eine Tabelle wie z.B.
A B
1 x-werte y-werte
2 1 4
3 2 5
4 3 23
5 4 70
6 5 12
7 6 5
8 7 56
9 8 78
10 9 1
11 10 0
12 11 112
Weiterhin brauchst du in der Userform ein Spreadsheet und ein Chartspace. Du findest beide durch Rechtsklick auf Steuerelemente–zusätliche Steuerelemente.
Dort dann Microsoft Office Charts 9.0 und Microsoft Office Spreadsheets 9.0 auswählen. Beide dann in die Userform einbinden und dann in den Eigenschaften des Spreadsheets visible auf false setzen.
Zumindest sind beide in meiner Version excel2000 vorhanden.
In den Codebereich der Userform1 kommt folgendes:
Option Explicit
Private Sub ChartSpace1_DataSetChange()
End Sub
Private Sub UserForm\_Activate()
Dim c
Spreadsheet1.ActiveSheet.Cells.Clear
Worksheets("Tabelle1").Range("A1:B12").Copy
Spreadsheet1.ActiveSheet.Cells(1, 1).Paste
Application.CutCopyMode = False
ChartSpace1.Clear
ChartSpace1.Charts.Add
Set c = ChartSpace1.Constants
ChartSpace1.Charts(0).Type = c.chChartTypeLineMarkers
ChartSpace1.DataSource = Spreadsheet1
ChartSpace1.Charts(0).SeriesCollection.Add
ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimSeriesNames, 0, "B1"
ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimCategories, 0, "A2:A12"
ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimValues, 0, "B2:B12"
ChartSpace1.Charts(0).HasLegend = True
'ChartSpace1.Charts(0).Axes(c.chAxisPositionLeft).NumberFormat = "0%"
'ChartSpace1.Charts(0).Axes(c.chAxisPositionLeft).MajorUnit = 0.1
End Sub
In den Codebereich von Modul1 kommt nur der Aufruf hinein:
Sub Schaltfläche1\_BeiKlick()
UserForm1.Show
End Sub
Ich habe ein bisschen rumprobiert, scheinbar kann das Chartspace nur ein Spreadsheet als Datenquelle ab, nicht ein normales Tabellenblatt, deshalb das Spreadsheet.
Gruß
Reinhard
ich möchte ein Liniendiagramm in einer UserForm anzeigen
lassen!
Die UserForm heißt UserForm1
Das Anzeigefeld hab ich erstmal Anzeige1 genannt
Der momentane Zielort des Liniendiagrammes ist
ActiveChart.Location Where:=xlLocationAsObject
Was muss ich ändern, damit ich das Diagramm in der UserForm
betrachten kann? Es sollte allerdings dynamisch bleiben, also
nicht vorher als Gif abgespeichert werden…
…ist das überhaupt möglich??
Bin Newbie und hab leider gar keinen Plan davon! 
Vielen Dank schonmal!!!
LG
DerStefan