Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1820to1824
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Leeren Wert einfügen ist sehr langsam
29.03.2021 22:05:11
eFCiKay
Liebes Forum,
ich melde mich mal wieder mit einem sehr seltsamen Problem.
Offenbar scheint es die ganze Welt noch nicht zu kennen, denn Google liefert keinerlei Hinweise dazu :D
Frage: warum dauert dieser Befehl
Range("A1").Value = ""
um ein Vielfaches länger als dieser
Range("A1").Value = "abc" ?
Und zwar komischerweise nur, wenn er über eine Formularschaltfläche oder ein Change-Event (z.B. Doppelklick) aufgerufen wird.
Der Aufruf über den VBE-Editor oder über ein Active-X-Button ist blitzschnell.
Ein einfaches Beispiel habe ich hier nachgestellt:
https://www.herber.de/bbs/user/145197.xlsm
Interessanterweise geht es auch über die Schaltfläche schnell, wenn direkt zuvor der Commandbutton benutzt wurde. Vermutlich, weil dann der "Fokus" noch auf diesem liegt. Zumindest ist dann keine Zelle aktiv umrahmt.
Noch etwas Zweites: wenn ich zuvor die Zelle A1 als "nur Text" formatiere, geht es auch über die Schaltfläche schnell.
An folgende Workarounds habe ich schon gedacht, aber diese scheiden aufgrund anderer Gegebenheiten aus:
- Commandbutton statt Schaltfläche verwenden (ich benötige das Doppelklick-Ereignis)
- statt .Value="" .clearcontents verwenden (ich übernehme den Wert aus anderen Zellen, die nur manchmal leer sind)
Probiert habe ich es mit Excel 2010 und 2019, jeweils 32bit unter Windows 10.
Bin gespannt auf eure Antworten!
Gruß, Sven

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leeren Wert einfügen ist sehr langsam
29.03.2021 22:20:12
Hans
Hallo Sven,
vielleicht stört sich Excel an dem Versuch, einen Leerstring in einer Schleife in einer Zelle zu platzieren ;-)
Ich vermute mal, dass Excel rumprobiert, um welche Eingabe es sich bei den Leerstring handelt. Ist die Zelle als Text formatiert, weiß Excel Bescheid.
Der Effekt stritt ausschließlich bei dem Leerstring auf, hat also m.E. für die Praxis keine Relevanz.
Gruss hans

AW: Leeren Wert einfügen ist sehr langsam
29.03.2021 22:33:21
eFCiKay
Hallo Hans,
danke für die schnelle Antwort.
Leider hat das in meiner "Praxis" schon Relevanz. Denn wie gesagt übernehme ich im echten Projekt die Werte vieler Zellen in andere (quasi via: Zelle1.Value = Zelle2.Value) und wenn die Herkunftszelle nunmal leer ist, dann wird dort der Leerstring übernommen (und soll es auch).
Ein Workaround fällt mir jetzt ein, dass ich zuvor auf Leerstring prüfe und stattdessen dann .clearcontents ausführen könnte.
Aber so ganz glücklich wär ich damit noch nicht, denn wie gesagt: über den ActiveX-Commandbutton geht es ja auch mit dem Leerstring.... :-D
Gruß, Sven

Anzeige
AW: Leeren Wert einfügen ist sehr langsam
29.03.2021 22:38:24
Hans
Hallo Sven,
dann formatiere die Zellen (es muss sich ja um mehrere handeln, bei einer einzelnen macht das keinen Sinn) vor dem Einsetzen des Leerstrings zu Text.
Gruß hans

warum überhaupt...
29.03.2021 22:22:26
Werner
Hallo,
...ein Leerzeichen in die Zelle schreiben anstatt die Zelle mit
Range("A1").ClearContents
zu leeren.
Gruß Werner

.CurrentRegion oder {End}-"Tasten"-Funktionalität
04.04.2021 11:19:51
lupo1
... könnte z.B. die Antwort sein.

20 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige