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

Forumthread: Diagramm mit flexiblem Datenbereich

Diagramm mit flexiblem Datenbereich
06.02.2007 19:51:21
Wolfgang
Guten Abend,
ich möchte ein Diagramm erstellen.
Der Datenbereich wird durch eine Schleife erstellt, wobei die Anzahl der Werte zwischen 20 und 80 liegen können.
Wie kann ich diesen flexiblen Datenbereich erstellen?
Und wo kann ich am besten die Höhe, Breite usw des Diagramms festlegen?
Ich habe die Erstellung des Diagramms mit dem Makrorekorder aufgezeichnet (für einen festgelegten Bereich X5:Y104; dieser Bereich soll aber flexibel sein!!):

Sub Makro2()
Charts.Add
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=Sheets("Berechnung").Range("X5:Y104"), _
PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="DRG Info"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "DRG:" & Sheets("Berechnung").Range("A5").Value
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Tage"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Euro"
End With
ActiveChart.HasLegend = False
ActiveSheet.Shapes("Diagramm 5").ScaleWidth 1.49, msoFalse, _
msoScaleFromBottomRight
ActiveSheet.Shapes("Diagramm 5").ScaleHeight 1.17, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes("Diagramm 5").ScaleWidth 1.1, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes("Diagramm 5").ScaleHeight 1.13, msoFalse, _
msoScaleFromBottomRight
ActiveSheet.Shapes("Diagramm 5").ScaleHeight 1.36, msoFalse, _
msoScaleFromTopLeft
Windows("Formular3.xls").SmallScroll Down:=-12
ActiveSheet.Shapes("Diagramm 5").ScaleHeight 1.05, msoFalse, _
msoScaleFromTopLeft
ActiveChart.SeriesCollection(1).Select
Selection.Delete
End Sub

Vielen Dank schon im Voraus!
Wolfgang
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm mit flexiblem Datenbereich
06.02.2007 20:19:23
Daniel
Hallo
je nachdem , wie deine Tabelle aufgebaut ist.
im günstigsten Fall mit dieser Variante in der 3. Programmzeile (dh. X5 sollte gefüllt sein und der Rest der Tabelle keine Leerspalten oder Leerzeilen enthalten):
ActiveChart.SetSourceData Source:=Sheets("Berechnung").Range("X5").currentregion, _
PlotBy:=xlColumns
Höhe und Breite legst du beispielweise mit den Eigenschaften
ActiveSheet.Shapes("Diagramm 5").height
ActiveSheet.Shapes("Diagramm 5").Width
fest. ansonsten einfach mal ausprobieren und einzelne Aktionen mit dem Makrorekorder aufzeichnen, dann siehst du schon, wie bestimmte Eigenschaften heißen und wie du sie verändern kannst.
Gruß, Daniel
Anzeige
Danke Daniel!!
06.02.2007 20:37:39
Wolfgang
Danke Daniel!!
Wolfgang
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige