Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datenreihe per VBA in ein Diagramm schreiben

Datenreihe per VBA in ein Diagramm schreiben
16.02.2016 09:01:39
Jockel
Hallo,
möchte in mein Diagramm *ActiveSheet.ChartObjects("Diagramm 4")* eine Datenreihe inklusive dem Reihenname (B2) reinschreiben, bzw die alte mit neuen werten überschreiben:
=DATENREIHE(ABS!$B$2;;ABS!$B$3:$B$28;5)
Der Makrorekorder zeichnet diese Aktion leider nicht auf. Kann mir bitte jemand zeigen, wie der Code aussieht ?
Danke
Jockel

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Datenreihe per VBA in ein Diagramm schreiben
16.02.2016 11:15:03
Beverly
Hi,
ungetestet:
Sub ReiheAnpassen()
With ActiveSheet.ChartObjects("Diagramm 4").Chart
With .SeriesCollection(5)
.Name = "=ABS!B2"
.Values = Worksheets("ABS").Range("B3:B28")
End With
End With
End Sub


Anzeige
Danke Karin, hat funktioniert owT
16.02.2016 14:40:40
Jockel
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Datenreihe per VBA in ein Diagramm schreiben


Schritt-für-Schritt-Anleitung

Um eine Datenreihe per VBA in ein Diagramm zu schreiben, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle Einfügen > Modul.

  3. Füge den folgenden Code ein:

    Sub ReiheAnpassen()
       With ActiveSheet.ChartObjects("Diagramm 4").Chart
           With .SeriesCollection(5)
               .Name = "=ABS!B2"
               .Values = Worksheets("ABS").Range("B3:B28")
           End With
       End With
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus: Drücke ALT + F8, wähle ReiheAnpassen und klicke auf Ausführen.


Häufige Fehler und Lösungen

Fehler 1: Diagramm nicht gefunden

  • Lösung: Überprüfe den Namen des Diagramms in der Zeile ChartObjects("Diagramm 4"). Stelle sicher, dass dieser Name korrekt ist.

Fehler 2: Werte nicht aktualisiert

  • Lösung: Vergewissere dich, dass der Bereich B3:B28 tatsächlich Werte enthält. Ansonsten wird die Datenreihe nicht korrekt aktualisiert.

Fehler 3: Makro läuft nicht

  • Lösung: Stelle sicher, dass die Makros in deinen Excel-Einstellungen aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.

Alternative Methoden

Wenn Du nicht mit VBA arbeiten möchtest, kannst Du auch die Folgendes versuchen:

  1. Manuelle Anpassung:

    • Klicke auf das Diagramm und dann auf die Datenreihe, die Du ändern möchtest.
    • Gehe zu den Diagrammtools und wähle die Option zum Bearbeiten der Datenreihe.
  2. Formeln verwenden:

    • Du kannst die DATENREIHE-Funktion in einer Zelle verwenden, um die Daten für das Diagramm zu definieren, jedoch ist dies in der Regel weniger flexibel als die Verwendung von VBA.

Praktische Beispiele

Um ein praktisches Beispiel zu zeigen: Angenommen, Du hast in deinem Excel-Dokument ein Diagramm namens „Diagramm 4“ und möchtest die Datenreihe mit neuen Werten aus dem Bereich B3:B28 überschreiben. Mit dem oben genannten VBA-Code kannst Du dies einfach durchführen.

Sub BeispielDatenreihe()
    With ActiveSheet.ChartObjects("Diagramm 4").Chart
        With .SeriesCollection(1) ' Ändere die Indexnummer für die gewünschte Datenreihe
            .Name = "=ABS!B2"
            .Values = Worksheets("ABS").Range("B3:B28")
        End With
    End With
End Sub

Tipps für Profis

  • Nutze Variablen: Um Deinen Code flexibler zu gestalten, kannst Du Variablen für den Diagrammnamen und den Bereich definieren.

    Sub FlexiblesDiagramm()
      Dim chartName As String
      Dim dataRange As Range
    
      chartName = "Diagramm 4"
      Set dataRange = Worksheets("ABS").Range("B3:B28")
    
      With ActiveSheet.ChartObjects(chartName).Chart
          With .SeriesCollection(1)
              .Name = "=ABS!B2"
              .Values = dataRange
          End With
      End With
    End Sub
  • Fehlersuche: Verwende Debug.Print innerhalb Deines Codes, um Variablenwerte während der Ausführung zu überprüfen.


FAQ: Häufige Fragen

1. Was mache ich, wenn ich kein Diagramm sehe? Überprüfe, ob das Diagramm auf dem richtigen Arbeitsblatt vorhanden ist und der Name exakt übereinstimmt.

2. Kann ich mehrere Datenreihen gleichzeitig aktualisieren? Ja, Du kannst mehrere With .SeriesCollection(n) Blöcke für verschiedene Datenreihen innerhalb des gleichen Makros verwenden.

3. Funktioniert dieser Code in Excel 2016? Ja, der bereitgestellte VBA-Code funktioniert in Excel 2016 sowie in neueren Versionen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige