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

Forumthread: Diagramm per VBA erstellen

Diagramm per VBA erstellen
14.08.2014 13:37:22
Hans
Hallo, ich habe ein Sheet in Excel, wo in Spalte A B und C Werte stehen.
Mittels VBA will ich automatisiert ein Diagramm einfügen, wo Spalte A die X-Werte und Spalte C die Y-Werte darstellen (B ist eine Hilfsspalte).
Charts.Add
ActiveChart.Location Where:=xlLocationAsObject, Name:="Test"
ActiveChart.ChartType = xlColumnClustered

Füge ich jetzt mittels dem Code ein Diagramm ein, wird automatisch Spalte A, B und C zum Diagramm hinzugefügt anstatt ein leeres Diagramm zu erstellen. Wie kann ich das verhindern?

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm per VBA erstellen
15.08.2014 14:30:46
Beverly
Hi Hans,
wenn der Cursor im Bereich der Spalten A:C steht und sich dort bereits Daten befinden, nimmt Excel automatisch den gesamten Bereich als Wertebereich an.
Sub DiaErstellen()
With ActiveSheet.Shapes.AddChart(xlColumnClustered, 0, 0, 300, 150).Chart
.SetSourceData Source:=Range("D1")
.Parent.Name = "Test"
With .SeriesCollection.NewSeries
.XValues = Range("A1:A10")
.Values = Range("C1:C10")
End With
End With
End Sub
Mit der Zeile:
.SetSourceData Source:=Range("D1")
wird dem Diagramm als Wertebereich eine Zelle zugewiesen, in der sich keine Daten befinden und damit ein Diagramm ohne Datenreihen erstellt . D1 musst du evtl. anpassen, da ich deinen Tabellenaufbau nicht kenne - jeden Fall muss diese Zelle leer sein.


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Diagramm mit VBA in Excel erstellen


Schritt-für-Schritt-Anleitung

Um ein Diagramm in Excel per VBA zu erstellen, kannst Du die folgenden Schritte befolgen. Dieses Beispiel zeigt, wie Du ein Balkendiagramm mit Werten aus Spalte A und C erstellst, während Spalte B als Hilfsspalte genutzt wird.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke im Menü auf Einfügen > Modul.

  3. Füge folgenden Code ein:

    Sub DiaErstellen()
        With ActiveSheet.Shapes.AddChart(xlColumnClustered, 0, 0, 300, 150).Chart
            .SetSourceData Source:=Range("D1") ' Eine leere Zelle angeben
            .Parent.Name = "Test"
            With .SeriesCollection.NewSeries
                .XValues = Range("A1:A10") ' X-Werte aus Spalte A
                .Values = Range("C1:C10")   ' Y-Werte aus Spalte C
            End With
        End With
    End Sub
  4. Passe die Zellreferenzen an: Stelle sicher, dass die Zellen A1:A10 und C1:C10 die richtigen Werte enthalten.

  5. Führe das Makro aus: Drücke F5 oder gehe zu Run > Run Sub/UserForm.

Mit diesen Schritten hast Du erfolgreich ein Diagramm erstellt, das nur die gewünschten Daten darstellt.


Häufige Fehler und Lösungen

  • Leeres Diagramm: Wenn das Diagramm leer bleibt, überprüfe, ob die angegebenen Zellen für .XValues und .Values tatsächlich Daten enthalten.
  • Automatische Auswahl der Daten: Wenn Excel automatisch den gesamten Bereich (A:C) auswählt, stelle sicher, dass der Cursor nicht in einer der Datenzellen steht, wenn Du das Makro ausführst.
  • Diagrammtyp ändern: Um einen anderen Diagrammtyp (z.B. Tortendiagramm) zu verwenden, ändere xlColumnClustered zu xlPie.

Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du auch direkt in Excel ein Diagramm erstellen:

  1. Daten markieren: Markiere die Daten in den Spalten A und C.
  2. Diagramm einfügen: Gehe zu Einfügen > Diagramme und wähle den gewünschten Diagrammtyp aus.
  3. Diagramm anpassen: Nutze die Diagrammtools, um das Diagramm nach Deinen Wünschen zu gestalten.

Das manuelle Erstellen eines Excel-Diagramms aus einer Tabelle ist einfach und erfordert keine Programmierkenntnisse.


Praktische Beispiele

Hier sind einige Beispiele für verschiedene Diagramme, die Du mit VBA erstellen kannst:

  • Balkendiagramm:

    .ChartType = xlColumnClustered
  • Tortendiagramm:

    .ChartType = xlPie
  • Liniendiagramm:

    .ChartType = xlLine

Jedes dieser Beispiele kann leicht in das obige VBA-Skript integriert werden, um verschiedene Diagrammtypen zu erstellen.


Tipps für Profis

  • Nutze Fehlerbehandlungsroutinen in Deinem VBA-Code, um unerwartete Probleme zu vermeiden.
  • Experimentiere mit verschiedenen Diagrammtypen, um das beste Layout für Deine Daten zu finden.
  • Speichere Deine VBA-Skripte als Excel-Makro-Dokument (.xlsm), um sicherzustellen, dass sie beim Speichern nicht verloren gehen.

FAQ: Häufige Fragen

1. Wie kann ich ein leeres Diagramm erstellen?
Um ein leeres Diagramm zu erstellen, weise dem Diagramm eine Zelle ohne Daten zu, wie in der Anleitung beschrieben.

2. Kann ich auch Diagramme aus einer einzelnen Spalte erstellen?
Ja, Du kannst ein Diagramm aus einer Spalte erstellen, indem Du die X-Werte manuell festlegst und die Y-Werte leer lässt, oder indem Du eine andere Datenquelle als Referenz verwendest.

3. Welche Excel-Version wird benötigt?
Die VBA-Anweisungen und Diagrammfunktionen sind in den meisten modernen Excel-Versionen (Excel 2010 und später) verfügbar.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige