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

Alle Diagramme in Worksheet bearbeiten

Forumthread: Alle Diagramme in Worksheet bearbeiten

Alle Diagramme in Worksheet bearbeiten
17.06.2013 10:50:45
M
Hallo,
habe folgende Codezeile, die genau 1 Diagramm aktiviert (mit dem in der Folge dann bestimmte Anpassungen gemacht werden):
ActiveSheet.ChartObjects("Diagramm 1").Activate
....
Wie bekomme ich es nun hin, nicht nur dieses eine Diagramm zu aktivieren/bearbeiten, sondern alle, die sich in dem Worksheet befinden?

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Alle Diagramme in Worksheet bearbeiten
17.06.2013 11:00:54
Beverly
Hi,
dazu musst du in einer Schleife über alle Diagrammobjekte des Tabellenblattes laufen. Außerdem muss man ein Diagramm nicht aktivieren um es bearbeiten zu können
Sub DiasBearbeiten()
Dim chrDia As ChartObject
For Each chrDia In ActiveSheet.ChartObjects
With chrDia.Chart
' hier der Code zum Bearbeiten
End With
Next chrDia
End Sub


Anzeige
ActiveSheet.ChartObjects.Select oder Schleife
17.06.2013 11:05:09
NoNet
Hallo M.,
je nachdem, welche Aktione Du durchführen möchtest kanns Du dazu entweder eine Schleife verwenden :
Sub AlleCharts()
Dim objChart As ChartObject
For Each objChart In ActiveSheet.ChartObjects
With objChart
.Left = 100 'Position vom linken Rand : 100 Pixel
'weitere Anweisungen
End With
Next
End Sub
Oder (z.B. zum Löschen auch nur alle ChartObjects auf dem aktuellen Blatt direkt referenzieren :
ActiveSheet.ChartObjects.Select 'Alle Diagramme markieren
ActiveSheet.ChartObjects.Delete'Alle Diagramme löschen
etc.
Gruß, NoNet

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Alle Diagramme in Worksheet bearbeiten


Schritt-für-Schritt-Anleitung

Um alle Diagramme in einem Excel-Arbeitsblatt zu bearbeiten, kannst du den folgenden VBA-Code verwenden. Dieser Code durchläuft alle Diagrammobjekte im aktiven Arbeitsblatt und ermöglicht es dir, Anpassungen vorzunehmen, ohne sie aktivieren zu müssen:

Sub DiasBearbeiten()
    Dim chrDia As ChartObject
    For Each chrDia In ActiveSheet.ChartObjects
        With chrDia.Chart
            ' Hier der Code zum Bearbeiten, z.B. Titel ändern
            .ChartTitle.Text = "Neuer Titel"
        End With
    Next chrDia
End Sub

Wenn du bestimmte Eigenschaften der Diagramme anpassen möchtest, kannst du die entsprechenden Anweisungen innerhalb der With-Anweisung hinzufügen.


Häufige Fehler und Lösungen

Problem: Der Code läuft nicht oder es wird ein Laufzeitfehler angezeigt.

Lösung: Überprüfe, ob du tatsächlich Diagramme im aktiven Arbeitsblatt hast. Wenn das Arbeitsblatt leer ist, kann der Code nicht ausgeführt werden. Zusätzlich solltest du sicherstellen, dass die Excel-Makros aktiviert sind.

Problem: Diagramme werden nicht angezeigt oder sind nicht bearbeitbar.

Lösung: Stelle sicher, dass du nicht versuchst, ein Diagramm zu aktivieren, bevor du es bearbeitest. Du kannst das Diagramm direkt referenzieren, ohne es zu aktivieren.


Alternative Methoden

Eine andere Methode, um alle Diagramme in einem Arbeitsblatt zu bearbeiten, ist die Verwendung einer Schleife, die direkt auf die Eigenschaften der Diagrammobjekte zugreift. Hier ist ein Beispiel:

Sub AlleCharts()
    Dim objChart As ChartObject
    For Each objChart In ActiveSheet.ChartObjects
        With objChart
            .Left = 100 'Position vom linken Rand: 100 Pixel
            ' weitere Anweisungen
        End With
    Next
End Sub

Wenn du alle Diagramme gleichzeitig markieren möchtest, kannst du den folgenden Code verwenden:

ActiveSheet.ChartObjects.Select ' Alle Diagramme markieren

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du alle Diagramme in einem Worksheet bearbeiten kannst:

  1. Alle Diagramme löschen:

    ActiveSheet.ChartObjects.Delete ' Alle Diagramme löschen
  2. Farben der Diagramme ändern:

    Sub FarbenAendern()
       Dim chrDia As ChartObject
       For Each chrDia In ActiveSheet.ChartObjects
           chrDia.Chart.SeriesCollection(1).Interior.Color = RGB(255, 0, 0) ' Rot
       Next chrDia
    End Sub

Tipps für Profis

  • Nutze die activesheet.chartobjects-Eigenschaft, um gezielt auf Diagrammobjekte zuzugreifen.
  • Setze Kommentare in deinem Code, um die einzelnen Schritte nachvollziehbar zu machen.
  • Teste deinen Code in einer Kopie der Datei, um unerwünschte Änderungen zu vermeiden.

FAQ: Häufige Fragen

1. Frage: Kann ich alle Diagrammtypen gleichzeitig bearbeiten?
Antwort: Ja, du kannst eine Schleife verwenden, um durch alle Diagrammobjekte zu iterieren und sie nach Bedarf anzupassen.

2. Frage: Ist es möglich, bestimmte Diagramme auszuwählen und nur diese zu bearbeiten?
Antwort: Ja, du kannst Bedingungen innerhalb der Schleife verwenden, um nur bestimmte Diagramme basierend auf ihren Eigenschaften zu bearbeiten.

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