Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Diagramm erzeugen

Forumthread: Diagramm erzeugen

Diagramm erzeugen
Benni
Hallo zusammen,
ich muss auf mehreren Sheets ein Diagramm auf die Position M7 erzeugen. Dieses Diagramm (ChartType = xlXYScatterLinesNoMarkers) soll jeweils zwei Linien enthalten die sich auf das jeweilige Sheet beziehen.
Die erste Linie geht von X-Achse: K6:K3000 und Y-Achse: J6:J3000.
Die zweite Linie geht von X-Achse: S6:S3000 und Y-Achse: R6:R3000.
Kann mir jemand bei meinem Problem mit Hilfe von VBA helfen?
Vielen Dank
Benni
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Diagramm erzeugen
28.02.2012 15:39:51
Beverly
Hi Benni,
bei "VBA gut" solltest du eigentlich wissen, dass man so etwas mit dem Makrorekorder aufzeichnen kann - zumindest das Erstellen auf einem Tabellenblatt. Anschließend kann man dann eine Schleife um das Ganze legen.


Anzeige
AW: Diagramm erzeugen
29.02.2012 08:25:11
Benni
Hallo Beverly,
komme gerade an meinem Ansatz nicht weiter! Vielleicht findest Du meinen Fehler in meinem Makro.
Vielen Dank
Benni

Sub Diagramm_in_Sheet()
Dim x As Integer
For x = 0 To Worksheets("VA0850-10_Auswertung.xlsm").Items.Count - 1
Worksheets("VA0850-10_Auswertung.xlsm").Items(x).Select
Range("M6").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveSheet.Shapes("Diagramm 1").IncrementLeft 273
ActiveSheet.Shapes("Diagramm 1").IncrementTop -156
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).Name = "=""unbearbeitet"""
ActiveChart.SeriesCollection(1).XValues = Range("K6:K3005")
ActiveChart.SeriesCollection(1).Values = Range("J6:J3005")
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).Name = "=""bearbeitet"""
ActiveChart.SeriesCollection(2).XValues = Range("S6:S3005")
ActiveChart.SeriesCollection(2).Values = Range("R6:R3005")
ActiveChart.SetElement (msoElementPrimaryCategoryAxisTitleAdjacentToAxis)
ActiveChart.SetElement (msoElementPrimaryValueAxisTitleRotated)
ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Text = "Kraft [kN]"
Selection.Format.TextFrame2.TextRange.Characters.Text = "Kraft [kN]"
With Selection.Format.TextFrame2.TextRange.Characters(1, 10).ParagraphFormat
.TextDirection = msoTextDirectionLeftToRight
.Alignment = msoAlignCenter
End With
With Selection.Format.TextFrame2.TextRange.Characters(1, 10).Font
.BaselineOffset = 0
.Bold = msoTrue
.NameComplexScript = "+mn-cs"
.NameFarEast = "+mn-ea"
.Fill.Visible = msoTrue
.Fill.ForeColor.RGB = RGB(0, 0, 0)
.Fill.Transparency = 0
.Fill.Solid
.Size = 10
.Italic = msoFalse
.Kerning = 12
.Name = "+mn-lt"
.UnderlineStyle = msoNoUnderline
.Strike = msoNoStrike
End With
ActiveChart.Axes(xlCategory).AxisTitle.Select
ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Text = "Weg [mm]"
Selection.Format.TextFrame2.TextRange.Characters.Text = "Weg [mm]"
With Selection.Format.TextFrame2.TextRange.Characters(1, 8).ParagraphFormat
.TextDirection = msoTextDirectionLeftToRight
.Alignment = msoAlignCenter
End With
With Selection.Format.TextFrame2.TextRange.Characters(1, 8).Font
.BaselineOffset = 0
.Bold = msoTrue
.NameComplexScript = "+mn-cs"
.NameFarEast = "+mn-ea"
.Fill.Visible = msoTrue
.Fill.ForeColor.RGB = RGB(0, 0, 0)
.Fill.Transparency = 0
.Fill.Solid
.Size = 10
.Italic = msoFalse
.Kerning = 12
.Name = "+mn-lt"
.UnderlineStyle = msoNoUnderline
.Strike = msoNoStrike
End With
Range("N27").Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.SetElement (msoElementLegendBottom)
Next
End Sub

Anzeige
AW: Diagramm erzeugen
29.02.2012 11:25:22
Beverly
Hi Benni,
und wo genau liegt der Fehler? Wenn jemand deinen Code am konkreten Beispiel testen soll, dann müsstest du schon mal deine Arbeitsmappe hochladen.


;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige