Excel Tabelle: 9 Spalten , X Zeilen
es soll per Macro aus einer Excel Liste ein Diagramm erstellt werden, welches zwei Spalten auswertet in denen sich Zahlen befinden.
Die Anzahl der Datensätze variiert jedoch jeden Monat.
Wenn ich das Macro über den Recorder erstelle werden jedoch feste Bereiche in das Macro geschrieben:
Bsp.: R1C1:R1C10
Somit müsste ich quasi jedes mal bevor ich das Macro starte den Bereich anpassen.
- ist der Bereich zu groß -> werden auch die leeren Zeilen mit ausgewertet und das Diagramm unleserlich
- ist der Bereich zu klein -> werden nicht alle Datensätze ausgewertet
Ich bräuchte somit eine Möglichkeit , einen großen Bereich festzulegen 1-1000 und darin nur die Datensätze auswerten zu lassen, welche auch Daten beinhalten.
Bzw kennt ihr bestimmt eine einfachere Lösung :-)
Das bisherige Macro:
------------------------------------------------------------------------------------------------------------------
Sub Auswerten()
'
' Auswerten Makro
'
Columns("B:C").Select
Columns("B:C").EntireColumn.AutoFit
Columns("D:D").Select
Selection.NumberFormat = "0"
Range("A1").Select
Charts.Add
ActiveChart.ChartType = xl3DBarClustered
ActiveChart.SetSourceData Source:=Sheets("Liste").Range("A1:I65"), _
PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).XValues = "=Liste!R3C4:R65C4"
ActiveChart.SeriesCollection(1).Values = "=Liste!R3C9:R65C9"
ActiveChart.SeriesCollection(1).Name = "=Liste!R1C1"
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:= _
"Balkendiagramm"
With ActiveChart
.HasTitle = False
.Axes(xlCategory).HasTitle = True
'.Axes(xlCategory).AxisTitle.Characters.Text = "Projekte"
.Axes(xlSeries).HasTitle = False
.Axes(xlValue).HasTitle = True
.Axes(xlValue).AxisTitle.Characters.Text = "Zeit in Tagen"
End With
ActiveChart.HasLegend = False
ActiveChart.HasDataTable = False
ActiveChart.PlotArea.Select
ActiveChart.ChartArea.Select
ActiveChart.Axes(xlCategory).Select
With ActiveChart.Axes(xlCategory)
.TickLabelSpacing = 1
.TickMarkSpacing = 1
.ReversePlotOrder = False
.AxisBetweenCategories = True
End With
End Sub
------------------------------------------------------------------------------------------------------------------
Dieser Beitrag wurde von mindbreaker bearbeitet: 14. Februar 2006 - 09:12