Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: ---> Neu: Office 2010 Forum <-
Laufzeit eines Makros abhängig von der Dateigröße?
zurück: Stunden in übersicht zusammenfügen weiter: Druckmakro Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Matthias12345
eifriger und dankbarer Nutzer


Verfasst am:
20. März 2008, 09:21
Rufname:
Wohnort: Karlsruhe

Laufzeit eines Makros abhängig von der Dateigröße? - Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Hallo
ich habe ein Makro geschrieben, das vermutlich nicht optimal programmiert ist und deshalb relativ lang braucht.
Diesmal scheint es besonders lang zu gehen, obwohl die Anzahl der Zellen, die überprüft werden gar nicht so groß ist wie schon wann anders mal, wo es (subjektiv) nicht so lang ging.
Kann es daran liegen, dass die Datei allgemein größer ist? (andere Tabellenblätter)
Hat die Anzahl offener Exceldateien einen Einfluss auf die Laufzeit?
Gruß,
Matthias
RO_SCH
Gast


Verfasst am:
20. März 2008, 13:20
Rufname:


AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Hi Matthias,

... lass mich mal schnell in meine Kristallkugel ...

Scherz beiseite - ohne zu wissen, was dein Makro genau ausführt oder was es nicht machen soll, werden wir das nie ergründen.

Gruß Roland
maninweb
VBA Professional & More


Verfasst am:
20. März 2008, 14:39
Rufname: maninweb
Wohnort: Herzogenrath

AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Hi Matthias12345...

beschreibe doch mal genauer, was Dein Makro macht. Andere Dateien haben
i.d.R. weniger Einfluss auf die Ablaufgeschwindigkeit. Eher sind korrekte Objekt-
adressierungen und vernünftige Variablendeklarationen wichtig. Ausserdem sollten
Activate und Select Anweisungen sparsam verwendet werden.

Gruß

_________________
Der größte Aberglaube der Gegenwart ist der Glaube an die Vorfahrt.
Jacques Tatischeff - auch bekannt als Jacques Tati
Matthias12345
eifriger und dankbarer Nutzer


Verfasst am:
20. März 2008, 14:48
Rufname:
Wohnort: Karlsruhe

AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

also gut, mein makro macht das, was man mit Access mit einer Kreuztabelle macht (hab ich mir sagen lassen).
Ich habe eine SAP-Ausgabe mit allen Arbeitsplänen.
da steht dann in einer Spalte die Artikelnummer und in der anderen der Arbeitsgang
0815 - 1
0815 - 2
0815 - 3
0815 - 4
4711 - 1
4711 - 2
4711 - 3
usw
ich formatiere sie um in dem ich eine For-Schleife drüberlaufen lasse, die mir im Endeffekt ein Ergebnis ausspuckt das so aussieht:
0815 - 1 - 2 - 3 - 4
4711 - 1 - 2 - 3
usw.
Drin stecken noch ein paar verschachtelte If-Abfragen, weil es Sonderfälle gibt, die ich nicht haben will. Ich vermute mal die machen es langsam (ich habe das auch nicht elegant gelöst).
Aber ich dachte, vielleicht haben auch andere Sachen Einfluss. Wenn ich im Task-Manager anschau, wieviel Speicherpaltz er belegt, dann standen da halt 30 MB, vermutlich der Speicher, den alle Excelsheets die grad offen waren belegt haben. Da dachte ich, vielleicht hievt er die bei der Makroausführung irgendwo immer mit.
Gruß,
Matthias

PS: um euch nicht nur in die Kristallkugel schauen zu lassen hier noch der Code. Schaut ihn euch nicht an. Smile

afk1 = Sheets("baeh").Cells(1, 1).Value
afk2 = Sheets("baeh").Cells(2, 1).Value
afk3 = Sheets("baeh").Cells(3, 1).Value
wertAlt = Sheets("Tabelle1").Cells(2, 1).Value
Sheets("Tabelle2").Cells(1, 1).Value = wertAlt
Zeile = 1
Spalte = 2
ende = 65536 'Sheets("Tabelle1").Range("A65536").End(xlUp).Row
For i = 2 To ende
wertNeu = Sheets("Tabelle1").Cells(i, 1).Value
If wertNeu <> wertAlt Then
wertAlt = wertNeu
Zeile = Zeile + 1
Spalte = 2
Sheets("Tabelle2").Cells(Zeile, 1).Value = wertAlt
End If
If Sheets("Tabelle1").Cells(i, 2).Value <> Sheets("Tabelle1").Cells(i - 1, 2).Value Then
If Sheets("Tabelle1").Cells(i, 2).Value <> afk1 And Sheets("Tabelle1").Cells(i, 2).Value <> afk2 And Sheets("Tabelle1").Cells(i, 2).Value <> afk3 Then
'ineffiziente methode um afks rauszufiltern. aber egal
Sheets("Tabelle2").Cells(Zeile, Spalte).Value = Sheets("Tabelle1").Cells(i, 2).Value
Spalte = Spalte + 1
End If
End If
Next
Zwickel
Im Profil kannst Du frei den Rang ändern


Verfasst am:
20. März 2008, 15:08
Rufname: Bernd
Wohnort: Zwickau

AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Hi Matthias,
Du schreibst, dass es gar nicht so viele Zellen sind.
Deine Schleife läuft aber von 2 bis 65536 das dauert!

ende = 65536 'Sheets("Tabelle1").Range("A65536").End(xlUp).Row

_________________
Gruß Bernd
verwende Excel 2003
Matthias12345
eifriger und dankbarer Nutzer


Verfasst am:
20. März 2008, 16:13
Rufname:
Wohnort: Karlsruhe

AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Schon richtig.
es sind 65000 Zellen.
Aber ich habe das heute morgen durchlaufen lassen.
Da ging es um 10 Minuten oder so. Ich hab mich sehr gewundert (weil ich es schneller in Erinnerung hatte) und mal mit Strg+Pause unterbrochen und geschaut wie weit er ist und dann wieder nach 10 Sekunden und dann war er 40 Artikelnummern weiter, also vielleicht 250 Zeilen.
Heute nachmittag hab ich es laufen lassen, da ging es vielleicht ne halbe Minute.
Mir geht es nicht darum, dass ich viele Zellen überprüfe und es entsprechend lang dauert, das ist klar, aber woher kommt es dass es manchmal sich schier nicht mehr einkriegt?
Gruß,
Matthias
bernd200
Im Profil kannst Du frei den Rang ändern


Verfasst am:
20. März 2008, 18:09
Rufname: Bernd
Wohnort: Böblingen


AW: Laufzeit eines Makros abhängig von der Dateigröße? - AW: Laufzeit eines Makros abhängig von der Dateigröße?

Nach oben
       Version: Office 2k (2000)

Hallo Matthias,

nach 10 min würde ich auch ungeduldig werden.
Hast du die üblichen "Beschleuninger" drin?
Code:

Application.EnableEvents = False
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Dein Code

Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
Application.ScreenUpdating = True

_________________
Gruss, Bernd
____________________________
Kaum macht man es richtig, schon funktioniert es ... Smile
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen




Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel VBA (Makros): Vorlage öffnen, xls-Dateiname abhängig von Inputbox 1 Roliviech 150 19. Apr 2010, 21:21
Amicro2000 Vorlage öffnen, xls-Dateiname abhängig von Inputbox
Keine neuen Beiträge Excel VBA (Makros): Togle Buttons voneinander abhängig machen 9 Sodala 111 26. Feb 2010, 20:57
Sodala Togle Buttons voneinander abhängig machen
Keine neuen Beiträge Excel Formeln: Nachfolgende Zellen sollen sich abhängig vom wert färben 1 germanb 217 06. Dez 2009, 10:55
shift-del Nachfolgende Zellen sollen sich abhängig vom wert färben
Keine neuen Beiträge Excel VBA (Makros): Makros fortlaufend ausführen 15 MaSch0212 239 21. Nov 2009, 21:06
MaSch0212 Makros fortlaufend ausführen
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Excel Hilfe: Freigabe von Mappen mit Makros / Zusammenführung von mappen 1 tokru 234 15. Sep 2009, 06:52
Thomas Ramel Freigabe von Mappen mit Makros / Zusammenführung von mappen
Keine neuen Beiträge Excel Formeln: Wert Abhängig des Ergebnisses formatieren 9 zimboo 315 08. Jul 2009, 13:58
zimboo Wert Abhängig des Ergebnisses formatieren
Keine neuen Beiträge Excel VBA (Makros): Makros öffnen andere Exceldatei - warum? 2 Gast 313 16. Jun 2009, 15:42
plotti Makros öffnen andere Exceldatei - warum?
Keine neuen Beiträge Excel VBA (Makros): Kombinationsfelder von einer Auswahl abhängig 0 rahelmatthes 110 18. März 2009, 16:50
rahelmatthes Kombinationsfelder von einer Auswahl abhängig
Keine neuen Beiträge Excel VBA (Makros): WENN;DANN mit Makros 3 Donald1977 4722 19. Dez 2008, 16:32
zigge WENN;DANN mit Makros
Keine neuen Beiträge Excel VBA (Makros): Makros beim öffnen ausführen 3 lirum 763 23. Okt 2008, 11:16
lirum Makros beim öffnen ausführen
Keine neuen Beiträge Excel VBA (Makros): Makros in Excel 2000 einfügen 0 micha_kugler 226 20. Mai 2008, 23:32
micha_kugler Makros in Excel 2000 einfügen
Keine neuen Beiträge Excel VBA (Makros): Makros in unterschiedl Dateien verwalten 4 clementis 428 05. Mai 2008, 01:37
clementis Makros in unterschiedl Dateien verwalten
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: PHP JavaScript