Hallo ihr lieben Spzialisten,
ich würde mich riesig freuen, wenn ihr mir mit meinem Makro helfen könnetet. Ich kenn mich leider noch nicht so aus mit VBA.
Ich habe ein Makor aufgezeichnet, und möchte das auch auf weitere Zellen im Dokument anwenden. Es geht um die Darstellung von Verbräuchen verschiedener Materialien. In Spalte I ist der monatliche Verbrauch dargestellt, in Spalte C der jeweils zugehörige Monat.
Vor der Diagrammdarstellung sollen noch ein paar Dinge erledigt werden. Zunächst muss eine Splate eingefügt werden, damit Platz für die Ergebnisse ist, dann wird ein durchschnittsverbauch, index und Standardabweichung berechent. Der Durchschnittsverbrauch soll mit in das Diagramm. (Wenn die Berechnungen innerhalb des diagramme erstellens zu komplex sind, kann das sonst auch vorher ander berechnet werden, wenn das nur in einem geht wäre das der Optimalfall.)
Die Daten umfassen jeweils 2 Jahre - 24 Monate = 24 Zeilen. Es kommen immer 2 Jahre in ein Diagramm. Enstprechend soll die Diagrammerstellung alle 24 (+der durch das Makro eingefügte Zeile -25?) Zeilen wiederholt werden. Wie kann ich das einstellen?
Ich habe es schon mit der For schleife versucht und ein i definiert, das hatte ich auf 21626, da das sheet insegesamt soviele Zellen hat - hat aber leider alles nicht so funktioniert :( würde mich riesig freuen, wenn jemand weiter helfen kann.
Hier ist mal das Makro, was ich aufgezeichnet habe, welches dann enstprechend jeweils alle 24 Zeilen wiederholt werden soll.
Sub Diagramme_erstellen()
'
' Diagramme_erstellen Makro
'
'
Rows("14:14").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("M2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(R2C9:R13C9)"
Range("M2").Select
Selection.AutoFill Destination:=Range("M2:M13"), Type:=xlFillDefault
Range("M2:M13").Select
Range("N2").Select
ActiveCell.FormulaR1C1 = "=RC[-5]/RC[-1]"
Range("N2").Select
Selection.AutoFill Destination:=Range("N2:N13"), Type:=xlFillDefault
Range("N2:N13").Select
Range("O2").Select
ActiveCell.FormulaR1C1 = "=STDEVA(R2C9:R13C9)"
Range("O2").Select
Selection.AutoFill Destination:=Range("O2:O14"), Type:=xlFillDefault
Range("O2:O14").Select
Range("P14").Select
ActiveCell.FormulaR1C1 = "=RC[-1]/R[-1]C[-3]"
Range("P15").Select
ActiveWindow.ScrollColumn = 2
Range("C2:C13,I2:I13").Select
Range("I2").Activate
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveChart.SetSourceData Source:=Range( _
"Tabelle1!$C$2:$C$13;Tabelle1!$I$2:$I$13")
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).Values = "=Tabelle1!$M$2:$M$13"
ActiveChart.SeriesCollection(2).XValues = "=Tabelle1!$C$2:$C$13"
ActiveChart.SeriesCollection(2).Name = "=""Mittlerer Verbrauch"""
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(3).Name = "=""Folgejahr"""
ActiveChart.SeriesCollection(3).XValues = "=Tabelle1!$C$2:$C$13"
ActiveChart.SeriesCollection(3).Values = "=Tabelle1!$I$15:$I$26"
ActiveSheet.Shapes("Diagramm 2").IncrementLeft 427.2
ActiveSheet.Shapes("Diagramm 2").IncrementTop -76.8
End Sub
Achso fallls es jetzt verwirrend ist in dem Diagramm stelle ich drei Verläufe dar, immer zwei Jahre zusammen + den mittleren Verbrauch der oberen 12 Daten.
Freue mich echt über jeden Tip - danke! :)
|