Ich bin ein excel newbie der seit gerademal 3 wochen mit excel und VB programmiert. Ich habe nun schon ein recht komplexes programm und ich bermerke, dass die notwendige Rechenleistung für einige Makros wirklich beträchtlicht ist. Die Dateigröße beträgt fast 4MB. Daher ein paar Fragen für diejenigen die sich wirklich auskennen (entschuldigt bitte meine Ignoranz):
1) Welche Elemente haben einen großen Einfluss auf die Dateigröße? (Userforms, Comboboxes, Schaltflächen, besetzte Zellen...?)
2) Wie könnte ich die Laufzeit von Makros verringern? Ich weiss dass Schleifen die Laufzeit gewaltig erhöhen können. Macht die Anzahl der gesamten Zeilen eines Makros einen großen Unterschied. Würde es sich auszahlen den code durchzulesen und befehle zu komprimieren? z.b. statt:
Range("A2:C" & LastRow).Select
Selection.Copy
'Prepare Kalk sheets for use
Sheets(Array("Plan-Kalk", "Ist-Kalk", "Hoch-Kalk")).Select
Range("A2").Select
Selection.PasteSpecial
nur so etwas:
Range("A2:C" & LastRow).Copy Destination:=Worksheets(Array("Plan-Kalk", "Ist-Kalk", "Hoch-Kalk")).Range("A2")
(allerdings habe ich mit der Copyfunktion auf arrays angewandt nicht gute erfahrung gemacht, der obige code funkt nicht ganz...)
habt ihr irgendwelche Vorschläge? Ich war auch auf vbusers.com aber ihr excelreduzierungsprogramm funktioniert leider nicht mit meiner datei.
Ich hoffe dass dieses Post auch vielen anderen helften wird :)
Vielen Dank