Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
636to640
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
636to640
636to640
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

immer noch langsames Excel

immer noch langsames Excel
13.07.2005 15:52:26
Frank
Habe ein Tabellenblatt mit 5 (Makros)* 35 (Personen) Schaltflächen; also 175 Schaltflächen insgesamt, (zudem noch 3 * 35 Textboxen).
Aus einem mir noch nicht erklärlichem Grunde laufen alle Makros recht langsam, obwohl sie für eine Person (entfernen aller Schaltflächen bis auf fünf für eine Person) recht schnell laufen. sollte es wirklich nur am vorhanden sein der weitern Schaltflächen liegen?
am Rechner liegt es nicht und die Datei ist ca. 400 kB groß.
Wäre dankbar für eine Antwort ….. bin in einer Sinnkrise
Versteh Microsoft-Produkte nicht so ganz.

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: immer noch langsames Excel
13.07.2005 15:54:44
Eule
Hi Frank
hast du vielleicht viele Berechnungen?
stell mal auf manuelle Berechnung. Wie läufts dann?
Gruss Eule
AW: immer noch langsames Excel
13.07.2005 16:06:08
Frank
Habe keine großen Berechnungen, werden alle über makros berechnet. Habe schon auf "Manuel" und div andere Funktionen ausgeschaltet. Wenn die Schaltflächen nicht mit makros verlinkt sind, dann läufts normal, brauche aber die makros.
Code optimiiieren
13.07.2005 16:29:52
Galenzo
dann liegt es wohl doch eindeutig an den Makros.
daher solltest du diese optimieren und performanter machen.
z.B. durch:
- Vermeiden von Selektieren, richtige Variablendefinitionen, Zusammenfassen mehrfach genutzter Prozeduren, Verwendung von Tabellenfunktionen, Vermeiden von Schleifen usw.
Da ich den Code aber nicht durch meine Glaskugel erkennen kann, kann ich dir an dieser Stelle allerdings auch keine konkreten Tips geben...
Viel Erfolg!
Anzeige
AW: Code optimiiieren
13.07.2005 16:38:41
Frank
Haben den schon optimiert.
Merkwürdig ist halt, dass die Makros gut laufen, nur durch das Verknüpfen mit den Schaltflächen (5*35) wird das ganze langsam.
Danke für die Hilfe
Frank
AW: Code optimiiieren
13.07.2005 16:53:50
Galenzo
kann ich nicht nachvollziehen.
poste mal ein paar Code-Schnippsel - ansonsten kann ich das nicht nachvollziehen..
AW: Code optimiiieren
13.07.2005 17:30:41
Frank
Hab mal einen Teil hochgeladen:
Du findest ihn unter
https://www.herber.de/bbs/user/24696.xls
Bin mehr oder weniger Neuling, also nicht über den Code lachen...höchstens lächeln, denn du wirst erkennen, was ich vorhabe.
Musste die 34 Personen raus nehmen, das ist jetzt also nur für eine.
Wenn dir zu dem code was besseres einfällt, dann nur zu!!
Danke schon jetzt!
Gruß Frank
P.S.: Werde morgen erst wieder online sein.
Anzeige
AW: Code optimiiieren
14.07.2005 14:33:53
Galenzo
Hmm, du hast "Formular"-Steuerelemente verwendet.
Zudem hast du viele "Selects", die nicht notwendig sind.
Meine Vorschläge: Verwende Steuerelemente aus der Symbolleiste "Steuerelemente"
Eliminiere die überflüssigen Selects durch richtige Addressierung (hast du sonst in deinem Code auch schon an verschiedenen Stellen so richtig gemacht). Fasse die Vielen einzelenen Makros, die mehr oder weniger alle das gleiche machen zu einer Prozedur zusammen, die dann immer mit jeweils anderem Paramter aufgerufen wird.
Viel Erfolg!
AW: Code optimiiieren
14.07.2005 15:43:06
Frank
Dann hoffe ich mal, dass du noch einmal schaust!!!
Hab da dann noch mal ein paar Fragen:
1. Wie verknüpfe ich ein Steuerelement mir einem Makro? (bei den Formularen geht das über Eigenschaften)
2. "Fasse die Vielen einzelenen Makros, die mehr oder weniger alle das gleiche machen zu einer Prozedur zusammen, die dann immer mit jeweils anderem Paramter aufgerufen wird." Wie mache ich das?
Weiß nicht, wie ich den Verweis auf das Formularfled hinbekomme, um dann den Sprung in die richtige Zeile zu machen.
3. Die selects, die ich eingebaut habe, sind immer zum Wechsel des Tabellenblattes, wie kann ich die umgehen?
Jetzt schon mal vielen Dank. Werde versuchen daran zu arbeiten!!!
Gruß Frank
Anzeige
AW: Code optimiiieren
14.07.2005 16:40:43
Galenzo
zu 1) einfach mal einen Doppelklick auf das eingefügte Steuerelement - das bringt dich direkt zum VBA-Editor. Bei einem Button landest du in einer leeren Prozedur mit dem Namen "Commandbutton_Click. Das ist eine sogenannte Ererignisprozedur. Diese wird immer dann abgearbeitet, wenn das betreffende Steuerelement ein bestimmtes Ereignis auslöst.
Hier also wenn der Button gedrückt wird. Trage in das vordefinierte "Gerüst" einfach deinen Makroaufruf ein. Oder schreibe die einzelnen Anweisungen gleich direkt da rein.
Ich habe mir noch etwas deinen Code angeschaut. Hier ein paar Bemerkungen:
Die Selects im Modul9 sind z.B. allesamt überflüssig. Beispiele:
aus:
Range("A3").Select
ActiveCell.FormulaR1C1 = "417"
wird:
Range("A3")=417
aus:
Columns("D:J").Select
Selection.EntireColumn.Hidden = False
wird:
Columns("D:J").EntireColumn.Hidden = False
Wenn ich mir die Prozeduren "Schüler_X_oHA_eintragen()" anschaue, sieht das so aus, als ob die alle das gleiche machen. Das könnte man in einer Prozedur zusammenfassen.
Dazu kannst du einer Prozedur einen (oder auch mehrere) Parameter mit auf dem Weg geben:
"

Sub Schüler_oHA_eintragen(Nummer as Integer)
..code..
Worksheets("Liste").Range("iv1").Value = Nummer
..code...
End Sub

Diese

Sub erwartet nun also beim Aufruf eine "Schülernummer", mit der sie dann weiterarbeitet. Der Aufruf gestaltet sich dann so:
..code..
Schüler_oHA_eintragen 6
..code..
Aber was ich ncoh bemerkt habe - wenn du zu Beginn einer Prozedur
Application.ScreenUpdating = False
anweist, dann solltes du am Ende der Prozedur auch wieder ein
Application.ScreenUpdating = True
einbauen. (Vielleicht liegt ja alles auch nur <u>daran</u>?
Zu mehr habe ich im Moment leider keine Zeit...
Wende dich doch mit konkreten Fragen ans Forum - da wird dir immer geholfen
Viel Erfolg!

Anzeige
AW: Code optimiiieren
14.07.2005 17:56:22
Frank
Vielen Dank!
Werde die Sachen mal ausprobieren. Wird allerdings einige Zeit gebrauchen, da ich immer nur nebenher an der Datei arbeite.
Vielen Dank für die Bemühungen.
Frank

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige