Live-Forum - Die aktuellen Beiträge
Datum
Titel
25.10.2025 08:21:40
24.10.2025 18:10:41
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Diagramm während Macro aktualisieren

Diagramm während Macro aktualisieren
13.07.2020 17:04:05
Jochen
Hallo zusammen,
und zwar stellt sich mir gerade das Problem, dass ich die Formel der Trendlinie eines Diagramms für bestimmte Betriebspunkte auslesen lassen möchte. Dazu habe ich Filter für die Betriebspunkte verwendet die ich in einer Schleife durchlaufen lasse und die darauf veränderte Funktion der Trendlinie auslese und im Formular ablege.
Das Problem ist nun, dass beim Start des Codes zwar die Schleife abgearbeitet wird jedoch das Diagramm nicht Aktualisiert wird und somit durchgehend die gleiche Trendlinienfunktion ausgelesen wird. Bei händischem durchlaufen der Schleife (F8) funktioniert der Code einwandfrei.
Fällt jemandem dazu vielleicht eine mögliche Lösung ein?
Nachfolgend noch mein Code

Sub Funktion_trendlinie_auslesen()
Dim zeilen As Integer
Dim i As Integer
Dim Dreh As Integer
Dim Druck As Double
Dim tex As String
Dreh = 500
Druck = 10
Do While Dreh 

Gruß Jochen
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm während Macro aktualisieren
13.07.2020 17:20:03
Beverly
Hi Jochen,
eventuell hilft, wenn man DoEvents in die Schleife einbaut oder Application.Wait
Auf jeden Fall solltest du Select weglassen - anstelle der Zeilen
    ActiveSheet.ChartObjects("Diagramm 32").Activate
ActiveChart.FullSeriesCollection(1).Trendlines(1).DataLabel.Select
Cells(zeilen + 1, 2) = ActiveChart.FullSeriesCollection(1).Trendlines(1).DataLabel.Text
reicht diese:
Cells(zeilen + 1, 2) = _
ActiveSheet.ChartObjects("Diagramm 32").Chart.FullSeriesCollection(1).Trendlines(1). _
DataLabel.Text


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Diagramm während Makro aktualisieren


Schritt-für-Schritt-Anleitung

Um ein Diagramm während eines Makros in Excel zu aktualisieren, kannst du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste im Projektfenster und wähle Einfügen > Modul.

  3. Erstelle deine Makro-Funktion: Füge den folgenden Code in das Modul ein:

    Sub Funktion_trendlinie_auslesen()
       Dim zeilen As Integer
       Dim i As Integer
       Dim Dreh As Integer
       Dim Druck As Double
       Dim tex As String
       Dreh = 500
       Druck = 10
    
       Do While Dreh < 1000
           ' Aktualisiere das Diagramm hier
           ActiveSheet.ChartObjects("Diagramm 32").Chart.Refresh
           ' Trendlinie auslesen
           Cells(zeilen + 1, 2) = ActiveSheet.ChartObjects("Diagramm 32").Chart.FullSeriesCollection(1).Trendlines(1).DataLabel.Text
           Dreh = Dreh + 50
       Loop
    End Sub
  4. Verwende DoEvents: Um sicherzustellen, dass das Diagramm aktualisiert wird, füge DoEvents in die Schleife ein:

    Do While Dreh < 1000
       DoEvents ' Ermöglicht Excel, die Benutzeroberfläche zu aktualisieren
       ActiveSheet.ChartObjects("Diagramm 32").Chart.Refresh
       Cells(zeilen + 1, 2) = ActiveSheet.ChartObjects("Diagramm 32").Chart.FullSeriesCollection(1).Trendlines(1).DataLabel.Text
       Dreh = Dreh + 50
    Loop
  5. Führe das Makro aus: Drücke F5, um das Makro auszuführen und das Diagramm zu aktualisieren.


Häufige Fehler und Lösungen

  • Excel Diagramm aktualisiert nicht: Wenn das Diagramm sich nicht aktualisiert, überprüfe, ob du DoEvents in deiner Schleife verwendet hast. Dadurch kann Excel die Benutzeroberfläche aktualisieren.

  • Diagramm trendlinie nicht auswählbar: Stelle sicher, dass du die richtige Serie und die richtige Trendlinie in deinem Code referenzierst.

  • Excel Diagramm aktualisiert sich nicht: Achte darauf, dass das Diagramm aktiv ist, bevor du es aktualisierst. Verwende ActiveSheet.ChartObjects("Diagramm 32").Activate.


Alternative Methoden

  • Application.Wait: Eine weitere Möglichkeit, um das Diagramm zu aktualisieren, ist die Verwendung von Application.Wait. Dies kann helfen, wenn du eine Verzögerung einfügen möchtest, um sicherzustellen, dass das Diagramm Zeit hat, sich zu aktualisieren.

    Application.Wait Now + TimeValue("00:00:01") ' 1 Sekunde warten
  • Manuelles Aktualisieren: Du kannst das Diagramm auch manuell aktualisieren, indem du die Schaltfläche "Aktualisieren" im Excel-Diagramm-Tool verwendest.


Praktische Beispiele

Hier ist ein einfaches Beispiel, das zeigt, wie du ein Diagramm in einer Schleife aktualisierst:

Sub Beispiel_Diagramm_Aktualisieren()
    Dim i As Integer
    For i = 1 To 10
        ActiveSheet.ChartObjects("Diagramm 1").Chart.SeriesCollection(1).Values = i * 10
        ActiveSheet.ChartObjects("Diagramm 1").Chart.Refresh
        DoEvents
    Next i
End Sub

In diesem Beispiel wird der Wert der ersten Serie in einem Diagramm in jeder Iteration aktualisiert und das Diagramm wird sofort angezeigt.


Tipps für Profis

  • Verwendung von Variablen: Nutze Variablen, um deine Daten besser zu organisieren und zu verwalten. Dies macht deinen Code flexibler und einfacher zu lesen.

  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung in deinem Makro, um unerwartete Probleme zu vermeiden, z. B. indem du On Error Resume Next verwendest.

  • Diagramm in Excel automatisch aktualisieren: Setze ActiveSheet.ChartObjects("Diagramm 32").Chart.Refresh an die richtige Stelle, um sicherzustellen, dass die Diagrammdaten immer aktuell sind.


FAQ: Häufige Fragen

1. Warum aktualisiert sich mein Excel-Diagramm nicht während des Makros?
Das kann daran liegen, dass Excel nicht genug Zeit hat, das Diagramm zu aktualisieren. Verwende DoEvents oder Application.Wait, um die Aktualisierung zu ermöglichen.

2. Wie kann ich eine Trendlinie in einem Diagramm auslesen?
Du kannst die Trendlinie über den Code ActiveSheet.ChartObjects("Diagramm 32").Chart.FullSeriesCollection(1).Trendlines(1).DataLabel.Text auslesen.

3. Was tun, wenn die Trendlinie nicht auswählbar ist?
Überprüfe, ob die richtige Serie im Diagramm ausgewählt ist. Manchmal kann es auch helfen, das Diagramm neu zu erstellen.

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