Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Achsenbeschriftung

Forumthread: Achsenbeschriftung

Achsenbeschriftung
16.09.2015 14:31:06
Raphi
Hallo Excelianer,
ich habe ein Problem mit der Erstellung meines Diagramms.
In der X-Achse soll die 0 beachtet werdeden. Leider startet meine Achse direkt bei 1.
Hierfür müsste bei der Auswahl des Datenbereiches nur C14 bis BC14 als X-Achsenbereich festgelegt werden.
Leider bekomme ich dies in folgenden Code nicht hin.
Kann mir bitte jemand helfen ? ;(
Sub Create_MSTA_KW()
'Tabelle erstellen
Dim rngBereich As Range
Dim lngLetzte As Long
Dim lngReihe As Long
Dim cht As Chart
Sheets("P3_MSTA_Diagramm_KW").Select
With Worksheets("P3_MSTA_Daten_KW")
' letzte belegte Zeile in Spalte B
lngLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 2)), _
.Cells(.Rows.Count, 2).End(xlUp).Row, .Rows.Count)
Set rngBereich = .Range(.Cells(15, 2), .Cells(lngLetzte, 55))
End With
With Worksheets("P3_MSTA_Diagramm_KW")
On Error Resume Next
Set cht = .ChartObjects("MSTA_KW").Chart 'bereits vorhanden?
On Error GoTo 0
If cht Is Nothing Then
'nein, erstellen
Set cht = .Shapes.AddChart.Chart
End If
With cht
.ChartType = xlLineMarkers
.SetSourceData Source:=rngBereich, PlotBy:=xlRows
.Parent.Name = "MSTA_KW"
.Legend.IncludeInLayout = True
.SetElement (msoElementPrimaryValueGridLinesNone)
With .Axes(xlValue)
.MaximumScale = 52
.MinimumScale = 0
.MajorUnit = 1
.TickLabels.NumberFormat = "KW ##"
.TickLabels.NumberFormat = "KW ##"
End With
With .Axes(xlCategory)
.TickLabels.NumberFormat = "KW ##"
.TickLabels.NumberFormat = "KW ##"
.AxisBetweenCategories = False
Userbild
Userbild

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Achsenbeschriftung
16.09.2015 16:21:39
Beverly
Hi,
ich nehme an du meinst das so:
Sub Create_MSTA_KW()
Dim rngBereich As Range
Dim lngLetzte As Long
Dim lngReihe As Long
Dim cht As Chart
With Worksheets("P3_MSTA_Daten_KW")
' letzte belegte Zeile in Spalte B
lngLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 2)), _
.Cells(.Rows.Count, 2).End(xlUp).Row, .Rows.Count)
Set rngBereich = .Range(.Cells(14, 2), .Cells(lngLetzte, 55))
End With
With Worksheets("P3_MSTA_Diagramm_KW")
If .ChartObjects.Count > 0 Then
Set cht = .ChartObjects("MSTA_KW").Chart 'bereits vorhanden?
Else
'nein, erstellen
Set cht = .Shapes.AddChart.Chart
End If
With cht
.ChartType = xlLineMarkers
.SetSourceData Source:=rngBereich, PlotBy:=xlRows
.Parent.Name = "MSTA_KW"
.Legend.IncludeInLayout = True
.SetElement (msoElementPrimaryValueGridLinesNone)
.SeriesCollection(1).XValues = Worksheets("P3_MSTA_Daten_KW").Range("C14:BC14")
With .Axes(xlValue)
.MaximumScale = 52
.MinimumScale = 0
.MajorUnit = 1
.TickLabels.NumberFormat = "KW ##"
.TickLabels.NumberFormat = "KW ##"
End With
With .Axes(xlCategory)
.TickLabels.NumberFormat = "KW ##"
.TickLabels.NumberFormat = "KW ##"
.AxisBetweenCategories = False
End With
For lngReihe = 1 To .SeriesCollection.Count
With .SeriesCollection(lngReihe)
.MarkerStyle = 2
.MarkerSize = 8
End With
Next lngReihe
With .Parent
.Top = .Parent.Range("B5").Top
.Left = .Parent.Range("B5").Left
.Width = 1200
.Height = 800
End With
End With
End With
Set rngBereich = Nothing
Set cht = Nothing
End Sub


Anzeige
AW: Achsenbeschriftung
17.09.2015 09:44:27
Raphi
Hallo Karin,
das funktioniert wunderbar ;)
Vielen Dank
;

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