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

Flackern beim ausführen von Makros

Forumthread: Flackern beim ausführen von Makros

Flackern beim ausführen von Makros
18.06.2003 17:44:24
Julius
Hallo,
wenn man Makros ausführt, so fängt die Ansicht an zu flackern, wenn die Makros Funktionen auf verschiedenen Tabellenblättern hintereinader ausführen.
Das Makro macht ja den Ablauf automatisch, den ich vorher ausgeführt habe. Wenn ich z.B. Zellen auf dem "Tabellenblatt 2" ausgewählt und kopiert habe und diese dann an einer Stelle in "Tabellenblatt 1" einfügen möchte, so springt beim Ablauf des Makros die Ansicht auch hin und her. Mache ich derer Sprünge mehrer so flackert es halt öfters.
Das Flackern finde ich sehr nervend.
Weiß jemand, wie man dies abschalten kann?

Danke für Euere Bemühungen und Hilfe
Viele Grüsse
Alles Gute
Julius

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Flackern beim ausführen von Makros
18.06.2003 17:47:56
Georg_Zi

Hallo Julius

in VBA kann auf Select, Activate usw verzichtet werden. Dies sind der Grund für das flakkern.

Als Notlösung

Bildschirmaktualsierung, Makro laufen lassen ohne Anzeige
damit die Ausführung des Makros nicht angezeigt wird, kann man vor den Code schreiben
application.screenupdating = False im Hintergrund ohne Anzeige
Man darf dann nur nicht vergessen, dieses wieder auf True zu setzen.
Generell sollte man aber alles mit Activate und Select vermeiden

Gruß Hajo

Der Code wurde getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel


Anzeige
Re: Flackern beim ausführen von Makros
18.06.2003 17:48:06
PeterW

Hallo Julius,

schalte die Bildschirmaktualisierung am Anfang aus und am Ende wieder ein (Application.ScreenUpdating = False bzw. True).

Gruß
Peter

Re: Flackern beim ausführen von Makros
18.06.2003 17:50:51
Michael B.

Hey Julius
am Anfang einfach Application.ScreenUpdating = False
und am Ende des Macro dasselbe nur anstelle False =True eintragen

Gruß Micha

Anzeige
Re: Flackern beim ausführen von Makros
18.06.2003 17:58:15
Martin

Hallo Hajo,

OK, wenn man den Code ohne Activate & Select hinbekommt, ist es viel eleganter und auch schneller, leider aber nicht immer möglich. Habe schon viel darüber in Büchern und im Forum gesucht und gelesen aber viel gefunden habe ich dazu nicht. Hast du vielleicht eine gute Quelle?

Gruss,
Martin


Anzeige
Re: Flackern beim ausführen von Makros
18.06.2003 18:03:59
Georg_Zi

Hallo Martin

ich habe mir das auch nur angelesen im Forum und ich habe noch nicht die 1% gefunden wo select notwendig ist. Das könnte aber auch damit zusammenhängen das ich wenig mit Bildern arbeite. Hier soll es einige Anweisungen geben die nicht ohne select auskommen.

Mit Büchern kann ich Dir nur Recht geben. Viele Autoren verwenden select damit auch der nicht so bewanderte die Aktionen nachvollziehen kann.

Gruß Hajo

Der Code wurde getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel



Anzeige
Re: Flackern beim ausführen von Makros
18.06.2003 18:07:17
PeterW

Hallo Martin,

in den Excel-FAQ (siehe Link oben im Forum) hat Hans in einem Beitrag etwas zum Selektieren geschrieben. Ist vielleicht ein Einstieg. :-)

Gruß
Peter

Re: Flackern beim ausführen von Makros
18.06.2003 20:29:47
Julius

Hallo Hajo und alle Anderen,
danke für Euere Hilfe.
Ich kann halt nicht so richitg programmieren und erstelle alle automatischen Funktionen mit der Makroaufnahme. Da sind die Befehle dann immer drin. Ich habe jetzt in der Hilfe gefunden und nachgelesen, wie man den Copy-Befehl mit Range anwenden kann.
Die Beispiele sehen so ähnlich aus, wie das was die Makro aufnahme erstellt. Man braucht aber keinen Select-Befehl. Das werde ich mal probieren. Vielleicht kalppt´s ja.
Gruß
Julius

Anzeige
;
Anzeige

Infobox / Tutorial

Flackern beim Ausführen von Makros in Excel


Schritt-für-Schritt-Anleitung

Um das Flackern beim Ausführen von Makros in Excel zu minimieren, kannst Du die Bildschirmaktualisierung deaktivieren. Folge diesen Schritten:

  1. Öffne den VBA-Editor in Excel (Alt + F11).

  2. Füge den folgenden Code am Anfang Deines Makros ein:

    Application.ScreenUpdating = False
  3. Füge am Ende Deines Makros den folgenden Code hinzu, um die Bildschirmaktualisierung wieder zu aktivieren:

    Application.ScreenUpdating = True
  4. Teste Dein Makro, um zu überprüfen, ob das excel flackert.


Häufige Fehler und Lösungen

Ein häufiger Fehler, den Benutzer machen, ist das Vergessen, die Bildschirmaktualisierung nach dem Ausführen des Makros wieder zu aktivieren. Dies kann zu unerwarteten Ergebnissen führen.

Lösung: Stelle sicher, dass Du den Befehl Application.ScreenUpdating = True am Ende Deines Makros hinzufügst.

Ein weiterer Punkt ist der übermäßige Gebrauch der Select- und Activate-Befehle, die oft das Flackern verursachen. Vermeide diese Befehle, wenn es möglich ist.


Alternative Methoden

Wenn Du das Flackern weiter reduzieren möchtest, kannst Du auch andere Methoden in Betracht ziehen:

  • Direkte Zellreferenzen: Anstatt Zellen auszuwählen, kannst Du direkt mit Zellen arbeiten. Zum Beispiel:

    Worksheets("Tabellenblatt1").Range("A1").Value = Worksheets("Tabellenblatt2").Range("A1").Value
  • Verwenden von Arrays: Wenn Du mit vielen Zellen arbeitest, kann das Verwenden von Arrays die Leistung verbessern und das Flackern reduzieren.


Praktische Beispiele

Hier ist ein einfaches Beispiel, um zu demonstrieren, wie Du das Flackern mit der Bildschirmaktualisierung verhindern kannst:

Sub BeispielMakro()
    Application.ScreenUpdating = False

    ' Daten kopieren
    Worksheets("Tabellenblatt2").Range("A1:B10").Copy
    Worksheets("Tabellenblatt1").Range("A1").PasteSpecial Paste:=xlPasteValues

    Application.ScreenUpdating = True
End Sub

In diesem Beispiel wird die Bildschirmaktualisierung deaktiviert, während Daten von einem Tabellenblatt in ein anderes kopiert werden.


Tipps für Profis

  • Vermeide Select und Activate: Nutze direkte Zellreferenzen und reduziere die Verwendung von Select und Activate, um die Ausführung Deines Codes zu beschleunigen und das Flackern zu minimieren.
  • Nutze Fehlerbehandlung: Füge Fehlerbehandlungsroutinen hinzu, um sicherzustellen, dass die Bildschirmaktualisierung immer wieder aktiviert wird, selbst wenn ein Fehler auftritt:

    On Error GoTo Fehlerbehandlung
    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True
    Exit Sub
    Fehlerbehandlung:
    Application.ScreenUpdating = True
    MsgBox "Ein Fehler ist aufgetreten!"

FAQ: Häufige Fragen

1. Warum flackert mein Excel-Bildschirm beim Ausführen von Makros?
Das Flackern tritt auf, wenn Excel zwischen verschiedenen Tabellenblättern wechselt. Durch das Deaktivieren der Bildschirmaktualisierung kannst Du dieses Problem minimieren.

2. Was muss ich beachten, wenn ich die Bildschirmaktualisierung ausschalte?
Stelle sicher, dass Du die Bildschirmaktualisierung wieder aktivierst, um unerwartete Verhaltensweisen zu vermeiden.

3. Gibt es eine Möglichkeit, das Flackern ohne Programmierung zu reduzieren?
Du kannst versuchen, die Anzahl der Select- und Activate-Befehle in Deinem Makro zu minimieren. Dies erfordert jedoch einige Programmierkenntnisse.

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