Anzeige
Archiv - Navigation
1152to1156
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Diagram mit dynamischem Bereich

Diagram mit dynamischem Bereich
PeterO
Hallo Forum!
Ich möchte per Makro ein Diagramm erstellen. Das ist soweit nicht das Problem. Allerdings habe ich eine dynamischen/variablen Bereich, der sowohl in Zeilen-Richtung als auch in Spalten-Richtung erweitert wird. Nun möchte ich nicht bei jeder Änderung Hand anlegen und den Bereich neu definieren. Mein Code sieht wie folgt aus:
Sub Diagramm_erstellen()
Dim ber_dia As Range
Dim i As Integer
With Sheets("Tabelle1")
For i = 1 To .UsedRange.Columns.Count
Dim ber(i) As Range
Set ber(i) = Range(.Cells(3, i), Cells(65000, i).End(xlUp))
Set ber_dia = Union(ber_dia, ber(i))
Next i
ber_dia.Select
End With
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=ber_dia, PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Tabelle1"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Auswertung"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Datum"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Leistung"
.SeriesCollection(2).Select
.SeriesCollection(2).ChartType = xlLine
End With
With ActiveChart
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
End With
ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlCategoryScale
End Sub
Die Ergänzung von neuen Zeilen stellt kein Problem dar, jedoch die Ergänzung von Spalten. ich habe das mit einer Schleife versucht, allerdings kommt immer eine Fehlermeldung, in Bezug auf
Dim ber(i) As Range
.
Ich weis, dass ich den kompletten Datenbereich auch über CurrentRegion erfassen könnte. Da ich aber noch mehr Diagramme erstellen möchte, die nicht alle Spalten erfassen, wäre ich für einen entsprechenden Lösungsansatz sehr dankbar!
Gruß Peter

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

Betreff
Benutzer
Anzeige
AW: Diagram mit dynamischem Bereich
20.04.2010 10:10:58
Rudi
Hallo,
Sub Diagramm_erstellen()
Dim ber_dia As Range
Dim i As Integer
Dim ber() As Range
With Sheets("Tabelle1")
ReDim ber(1 To .UsedRange.Columns.Count)
For i = 1 To .UsedRange.Columns.Count
Set ber(i) = Range(.Cells(3, i), Cells(65000, i).End(xlUp))
If ber_dia Is Nothing Then
Set ber_dia = ber(i)
Else
Set ber_dia = Union(ber_dia, ber(i))
End If
Next i
ber_dia.Select
End With
....

Gruß
Rudi
vielen Dank, Rudi! Funktioniert! owT
20.04.2010 12:33:41
PeterO
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige