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

Forumthread: Diagramm mit Makro Zeilen/Spalten tauschen Fehler

Diagramm mit Makro Zeilen/Spalten tauschen Fehler
13.05.2016 14:41:22
Joni
Hallo,
ich erstelle ein Diagramm per Makro. Hierbei muss ich die Zeilen und Spalten tauschen. Hier liegt mein Problem. Wenn die Datenbereiche nebeneinander liegen dann funktioniert der Tausch, wenn nicht dann nicht.
Beispiel das funktioniert:
sChart_X = "A268:A271"
sChart_Y = "B268:C271"
Set oChart = ActiveSheet.ChartObjects.Add(Range("A279").Left, Range("A279").Top, 400, 250)
With oChart
.Chart.ChartType = xlLine
.Chart.SetSourceData Source:=Range(sChart_X & "," & sChart_Y)
.Chart.PlotBy = xlColumns
End With
Beispiel mit Laufzeitfehler (Methode PlotBy ... fehlgeschlagen; -2147467259)
sChart_X = "A268:A271"
sChart_Y = "C268:D271"
Set oChart = ActiveSheet.ChartObjects.Add(Range("A279").Left, Range("A279").Top, 400, 250)
With oChart
.Chart.ChartType = xlLine
.Chart.SetSourceData Source:=Range(sChart_X & "," & sChart_Y)
.Chart.PlotBy = xlColumns 'hier entsteht der Fehler
End With
Auch die Variante
.Chart.SetSourceData Source:=Union(Range(sChart_X), Range(sChart_Y))
bring den gleichen Fehler.
Wenn ich die Zeilen/Spalten über die GUI tausche funktioniert das in allen Varianten problemlos. Im Moment bin ich ratlos. Hat jemand eine Idee was ich noch probieren könnte? Die Daten an eine andere Stelle zu übertragen, wo keine "Löcher" im Bereich sind wäre dann mein Notlösung, die ich aber gerne vermeiden würde.
Danke für eure Hilfe.
Gruß Joni

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm mit Makro Zeilen/Spalten tauschen Fehler
13.05.2016 19:34:51
Beverly
Hi Joni,
das scheint wohl ein Problem bei Excel2010 zu sein, denn mit Excel2013 erhalte ich keinen Fehler. Aber versuche es auf diesem Weg: weise zuerst nur die Y-Werte zu und anschließend der Achsenbeschriftung der 1. Datenreihe die X-Werte
With oChart.Chart
.ChartType = xlLine
.SetSourceData Source:=Range(sChart_Y)
.PlotBy = xlColumns
.SeriesCollection(1).XValues = Range(sChart_x)
End With


Anzeige
Mein Wochenende ist gerettet! Vielen Dank oT
13.05.2016 19:47:37
Joni
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Diagramm in Excel: Zeilen und Spalten tauschen


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Stelle sicher, dass deine Daten in einem geeigneten Format vorliegen. Idealerweise sollten die X- und Y-Werte in benachbarten Spalten angeordnet sein.

  2. Diagramm erstellen: Verwende ein Makro, um dein Diagramm zu erstellen. Hier ist ein Beispiel, das die Zeilen und Spalten tauscht:

    sChart_X = "A268:A271"
    sChart_Y = "B268:C271"
    Set oChart = ActiveSheet.ChartObjects.Add(Range("A279").Left, Range("A279").Top, 400, 250)
    With oChart
       .Chart.ChartType = xlLine
       .Chart.SetSourceData Source:=Range(sChart_X & "," & sChart_Y)
       .Chart.PlotBy = xlColumns
    End With
  3. Fehlerbehebung: Achte darauf, dass die Datenbereiche keine "Löcher" aufweisen. Tritt ein Fehler auf, überprüfe, ob die Daten in einer zusammenhängenden Struktur vorliegen.


Häufige Fehler und Lösungen

  • Laufzeitfehler: Wenn du den Fehler "Methode PlotBy ... fehlgeschlagen" erhältst, liegt das häufig an nicht benachbarten Datenbereichen. Stelle sicher, dass die Daten in der richtigen Reihenfolge und ohne Lücken angeordnet sind.

  • PlotBy-Fehler beheben: Eine mögliche Lösung besteht darin, zuerst nur die Y-Werte zuzuweisen und anschließend die X-Werte für die 1. Datenreihe:

    With oChart.Chart
       .ChartType = xlLine
       .SetSourceData Source:=Range(sChart_Y)
       .PlotBy = xlColumns
       .SeriesCollection(1).XValues = Range(sChart_X)
    End With

Alternative Methoden

  • GUI-Methode: Wenn das Makro nicht funktioniert, kannst du die Zeilen und Spalten auch manuell über die Excel-Oberfläche tauschen. Wähle die gewünschten Zellen aus, klicke mit der rechten Maustaste und wähle "Kopieren". Füge die Daten dann an der gewünschten Stelle mit "Inhalte einfügen" und wähle "Transponieren".

  • Pivot-Tabellen: Eine weitere Möglichkeit, um Zeilen und Spalten zu tauschen, ist die Verwendung von Pivot-Tabellen. Sie ermöglichen eine flexible Neuanordnung der Daten.


Praktische Beispiele

  1. Diagramm mit vertauschten Spalten: Wenn du die Spalten vertauschen möchtest, ändere einfach die Zuweisungen für sChart_X und sChart_Y, um die Daten in der gewünschten Reihenfolge darzustellen.

  2. Zeilen in Excel tauschen: Um die Zeilen in einer Tabelle zu tauschen, wähle die gesamte Zeile aus, kopiere sie, und füge sie dann an der neuen Position ein. Zum Beispiel, um Zeile 3 und 4 zu tauschen, kopiere Zeile 4 und füge sie an Position 3 ein, danach kopiere Zeile 3 und füge sie an Position 4 ein.


Tipps für Profis

  • Makros optimieren: Achte darauf, deine Makros so zu gestalten, dass sie flexibel und anpassbar sind. Verwende Variablen für die Datenbereiche, um das Makro leichter an unterschiedliche Daten anzupassen.

  • Fehlerprotokollierung: Implementiere Fehlerprotokollierung in deinen Makros, um besser nachvollziehen zu können, wo und warum Fehler auftreten.


FAQ: Häufige Fragen

1. Wie kann ich in Excel Zeilen und Spalten tauschen?
Du kannst Zeilen und Spalten in Excel manuell tauschen, indem du die Daten kopierst und mit "Inhalte einfügen" und der Option "Transponieren" an der gewünschten Stelle einfügst.

2. Warum funktioniert mein Makro nicht, um Zeilen und Spalten zu tauschen?
Stelle sicher, dass die Datenbereiche, die du im Makro verwendest, zusammenhängend sind und keine Lücken aufweisen. Überprüfe auch, ob du die X- und Y-Werte korrekt zugewiesen hast.

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