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

Forumthread: leere Datenreihen

leere Datenreihen
21.06.2017 15:22:04
Moni
Hallo zusammen, ich bin neu hier im Forum und noch im VBA-Anfangsstadium.
Ich sollte ein dynamisches Diagramm programmieren, bis zur letzten ausgefüllten Spalte und Zeile, da sich diese je nach Messeinstellungen verändern. So wei so gut. ABER komischerweise werden die ganze Zeit leere Datenreihen mit in das Diagramm gezogen und ich verstehe nicht wieso.
Kann es sein dass ich beim einfügen der Daten in Excel schon einen Fehler mache? Also ich muss die Messdaten über den Textkonvertierungs-Assistenten konvertieren und einfügen....
Ich kann mir nicht vorstellen, dass es am VBA code liegt (sorry mein Code ist total auskommentiert):
------------------------------------------------------------------
Sub DynamischesDiagramm()
'Beinhaltet den Code, welcher die Erweiterung des Diagramms
'um eine hinzugefügte Spalte zulässt.
Dim lastRow As Long, lastColumn As Long
Dim i As Integer, n As Integer
'Wählt Tabelle1 aus
Sheets("Tabelle1").Select
'Speichert in die Long-Variable lastRow die letzte ausgefüllt Zeile
lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
'Speichert in die Long-Variable lastColumn die letzte ausgefüllte Spalte
lastColumn = ActiveSheet.Cells(lastRow, Columns.Count).End(xlToLeft).Column
'Fügt ein Diagramm hinzu
Charts.Add
'Wählt im aktiven, vorher gewählten Diagramm den Diagrammtyp
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
'With ersetzt dass man vor ActiveCharts immer Sheets("Tabelle1"). schreiben muss
With Sheets("Tabelle1")
'Zählt von i = der letzten Spalte bis zur 2. in Schritten von 2 nach links
For i = 2 To lastColumn Step 2
'Zähler
n = n + 1
'Fügt eine neue Datenreihe hinzu...
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(n).Name = n
'...mit diesen X-Werten...
ActiveChart.SeriesCollection(n).XValues = Range(.Cells(7, 1), .Cells(lastRow, 1))
'...und diesen Y-Werten.
ActiveChart.SeriesCollection(n).Values = Range(.Cells(7, i), .Cells(lastRow, i))
Next i
ActiveChart.SetElement (msoElementPrimaryCategoryAxisTitleAdjacentToAxis)
Selection.Caption = "Potential in V vs."
ActiveChart.SetElement (msoElementPrimaryValueAxisTitleRotated)
Selection.Caption = "Current in µA"
End With
End Sub
-----------------------------------------------------------------------------------
Vielen Dank schonmal für eure liebe Hilfe!
Moni
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
For i = 2 To lastColumn Step 2 ?
21.06.2017 15:55:03
Matthias
Hallo
Vermutlich muss Deine Schleife so sein.
Ungetestet!
Statt
For i = 2 To lastColumn Step 2
so:
For i = lastColumn to 2 Step -2
Gruß Matthias
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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