Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1284to1288
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
Inhaltsverzeichnis

AutoFill dauert ewig!

AutoFill dauert ewig!
01.11.2012 10:56:54
Snewi
Hi,
ich habe eine Formel die ich nach einer Abfrage aktualisieren muss!
Das mache ich über:

Selection.AutoFill Destination:=Range("A2:A20000"), Type:=xlFillDefault
Das dauert bei mir über 8 min! Geht das auch schneller oder anders?
Gruß

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: AutoFill dauert ewig!
01.11.2012 11:01:05
Klaus
Hi Snewi,
erstmal auf select / selection verzichten. Immer!
ich rate jetzt mal, die selection ist Zelle A1? Dann versuchs so:
Range("A1").Copy Range("A2:A20000")
AutoFill im VBA-Code ist eine Krankheit des Makrorekorders. Du hast beim Aufzeichnen die Zelle am schwarzen Punkt angepasst und gezogen, das wurde auch aufgezeichnet. Autofill ist schlicht langsamer als Copy, welches ziemlich exakt das gleiche macht.
Grüße,
Klaus M.vdT.

AW: AutoFill dauert ewig!
01.11.2012 11:24:49
Snewi
Hammer geht viel schneller! Danke!
Gibt es auch was anderes für Text in Spalten als das:

Columns("A:A").Select
Selection.TextToColumns Destination:=Range( _
"Tabelle_Abfrage_von_sgarchi[[#Headers],[HEAT_NAME]]"), DataType:=xlDelimited _
, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True
gruß

Anzeige
AW: AutoFill dauert ewig!
01.11.2012 11:38:35
Klaus
Hallo Snewi,
aus deinen Codefetzen sehe ich, dass du sehr viel Makrorekorder Code benutzt. Nützt ja auch nichts, wenn man ihn nicht selbst schreiben kann ... aber Rekordercode muss fast prinzipiell bereinigt werden. Faustregel: die Worte "select", "activate" und "selection" haben in einem Code nichts zu suchen² es sei denn du WILLST explizit selektieren oder aktivieren.
Viel besser als ich es je könnte erklärt es Peter Haserodt:
http://www.online-excel.de/excel/singsel_vba.php?f=78
Lies das mal komplett durch, es hilft!
Zu deiner Frage: Erstmal das select raus:
Columns("A:A").TextToColumns Destination:=Range( _
"Tabelle_Abfrage_von_sgarchi[[#Headers],[HEAT_NAME]]"), DataType:=xlDelimited _
, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True

Und dann vermute ich, dass es sehr lange dauert weil du tatsächlich die gesamte Spalte nimmst. Ungetestet, probiers mal so:

lRow = Range("A65536").end(xlup).row
Range("A1:A" & lRow).TextToColumns Destination:=Range( _
"Tabelle_Abfrage_von_sgarchi[[#Headers],[HEAT_NAME]]"), DataType:=xlDelimited _
, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True
Grüße,
Klaus M.vdT.
²ausnahmen gibt es natürlich immer

Anzeige
AW: AutoFill dauert ewig!
01.11.2012 12:03:55
Snewi
Ok ich werd mal ein bischen lesen und wieder was lernen!
Danke und Gruß

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige