Suche | Statistiken | Benutzerliste | Access-FAQ | Datenschutz Foren
donkarl Forum
donkarl Forum ->  Themen -> Access -> Diskussion ansehen

Du bist als Gast eingelogt. ( Anmelden | Registrieren )
  • Wunderliches MSACCESS - Performance
  • Tarzun20.08.20 15:02
       └ RE: Wunderliches MSACCESS - Performance PeterDoering21.08.20 20:54
          └ RE: Wunderliches MSACCESS - Performance Tarzun24.08.20 16:29
  • Access-Fenster wechseln spontan in den Vordergrund
  • Pochmann-IT04.08.20 17:44
       └ RE: Access-Fenster wechseln spontan in den Vorde... StefanWirrer20.08.20 14:08
  • Einladung zum 2. virtuellen Access-Stammtisch Hann...
  • KlausWerther19.08.20 12:15
  • Access Stammtisch München am 13.08.2020 (Do)
  • StefanWirrer11.08.20 14:06
  • Probleme mit Combobox und Autoexpand
  • KatrinCou07.08.20 12:09
  • Import-Spezifikation
  • Marzer15.07.20 18:30
       └ RE: Import-Spezifikation PeterDoering16.07.20 01:26
          └ RE: Import-Spezifikation Marzer19.07.20 21:53
  • Verbindung zu SQL-Server läuft auf Automatisierung...
  • willi15426.06.20 11:59
       └ RE: Verbindung zu SQL-Server läuft auf Automatis... willi15409.07.20 09:23
  • Access Stammtisch München am 09.07.2020 (Do)
  • StefanWirrer09.07.20 08:30
  • nochmals Access 2016 Runtime - Absturz - Bug?
  • Mario Nestelberger03.07.20 19:46
  • Runtime Version von Access 2016 ein Scherz ?
  • Neuling23.06.20 18:40
       └ RE: Runtime Version von Access 2016 ein Scherz ? Karl Donaubauer24.06.20 09:50
  • Typen unverträglich
  • SoeSchi23.06.20 07:34
       └ RE: Typen unverträglich PeterDoering23.06.20 11:54
          └ RE: Typen unverträglich SoeSchi23.06.20 14:45
  • Der virtuelle Access-Stammtisch
  • Martin Asal22.06.20 21:41
  • Ungebundenes Textfeld zeigt nur 255 Zeichen an
  • wienerbergpeter19.06.20 10:25
       └ RE: Ungebundenes Textfeld zeigt nur 255 Zeichen ... Karl Donaubauer19.06.20 18:08
          └ RE: Ungebundenes Textfeld zeigt nur 255 Zeiche... wienerbergpeter20.06.20 12:13
  • Fehler beim Lesen eines Recordsets
  • Markus Wenger19.06.20 09:59
       └ RE: Fehler beim Lesen eines Recordsets Karl Donaubauer19.06.20 18:01
  • Unterschiedliche Unterformulare aus einem ungebund...
  • MarkusC16.06.20 10:36
       └ RE: Unterschiedliche Unterformulare aus einem un... PeterDoering16.06.20 13:43
    Tarzun
    Gesendet: 20.08.20 15:02
    Betreff: Wunderliches MSACCESS - Performance


    New user

    Beiträge: 3

    Hallo Allerseits. ;-)

    Ausgangslage/Prozedur:

    Nach dem Klick auf einen Button, wird via VBA-Prozedur eine Prozedur aufgerufen:

    In dieser aufgerufenen Prozedur („Meldung“) wird ein dynamisches Formular erstellt (mittels create Form)

    Eine Objekt/Themen-ID via SQL ausgewertet (als Parameter, beim Aufruf übergeben)

    Dann wird ein Recordset befüllt mit 4 Ausgabefelder.

    Dauer bisher bei der Ausführung: weniger als eine Sekunde

    Das Recordset ist nun beispielsweise mit 60 Datensätzen befüllt.

    Jeder Datensatz bestimmt, welches Control (Textfeld, Combo- und Listboxen) dynamisch zu erstellen ist.

    In einer For-Schleife werden,

    je nach Controltyp, die entsprechenden Eigenschaften/Werte mittels SQL-Abfrage generiert und dann dem Control zugewiesen.

    Nach der Schleife wird noch einige Prüfarbeit erledigt und dynamischer Code geschrieben und das soeben dynamisch erstellte Fenster/Formular geöffnet.

    Die Schleife benötigt Zeit (Access 2020/Win10/aktueller Mehrkern Intel-Rechner).

    Bei ca. 60 Controls kann es gut 15Sekunden dauern, bis das Formular/Fenster geöffnet wird.

    So weit so schlecht.

    Habe Indizes gesetzt, Abfragen und Tabellen optimiert. Hat nicht wirklich geholfen, die Zeit bedeutend zu verkürzen.

    Jetzt kommts: Aus Langeweile oder auch Verzweiflung dachte ich an einen Fortschrittsbalken, damit der User weiß, dass da noch etwas kommt. Für (nicht nur) ungeduldige User sind 15 Sekunden eine Ewigkeit.

    Meine Bedenken dabei: Es wird noch langsamer.

    Aber: Es ist schneller geworden! Und zwar um einiges. Das Fenster ist jetzt nach 4 Sekunden offen und das ist schon fast zumutbar.

    Wie habe ich‘ s bewerkstelligt?


    Eine zweite Form „Fortschrittsformular“ mit 2 Controls erstellt (statisch).

    Diese öffne ich via VBA, bevor ich die oben beschriebene Prozedur „Meldung“ aufrufe.

    In der nachfolgend aufgerufenen Prozedur „Meldung“, am Schleifenanfang, aktualisiere ich nun bei jedem Durchgang den Fortschrittsbalken im „Fortschrittsformular“, indem ich die Weite eines Controls um 1 erhöhe.

    Dazu kommt ein DoEvents und ein SetFocus auf das „Fortschrittsformular“.

    Nehme ich den SetFocus raus, braucht das dynamische Formular wieder die Ewigkeit von min. 15 Sekunden zur Erstellung.

    Warum wird Access schneller, wenn ich bei jedem Schleifendurchgang, den Focus auf ein anderes geöffnetes Formular setze?

    Hat jemand eine Erklärung dafür?
    Top of the page Bottom of the page


    Seite: < 10 11 12 13 14 15 ... 16 17 18 19 20 21 22 ... >
    Suche in diesem Forum
    Druckfreundliche Version
    (Alle Cookies von dieser Seite löschen.)