Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: datekk am Februar 22, 2017, 15:12:30

Titel: Fortschritt anzeigen
Beitrag von: datekk am Februar 22, 2017, 15:12:30
Hallo,

ich habe ein Formular, hier füge ich in ungebundenen Steuerelementen einen Wert für Start und einen Wert für Ziel ein.

Nach klicken auf einen Button läuft ein VBA Code mit einer For / Next Schleife. Der 'Zähler' dieser Schleife solle in dem Formular ausgegeben werden. Also z.B. von 0 bis 100, dann soll im Formular in einem Textfeld der aktuelle Stand der Schleife ausgeben werden.

Innerhalb der Schleife aktualisiere ich den Feldinhalt mit me.feld = lngZähler

Wenn ich jedoch auf den Button drücke, dann ändern sich die Felder erstmal gar nicht. Aus dem Mauszeiger wird ein Rad/Sanduhr. Erst nach Beendigung der kompletten Schleife werden die Felder einmalig aktualisiert.

Da ich aber lange Schleifen durchlaufe möchte ich gern den aktuellen "Bearbeitungsstand" sehen. Wie ist dies möglich?

Ist es weiterhin möglich, eine umfangreiche Aufgabe im Hintergrund zu erledigen und trotzdem mit der restlichen DB noch abreiten zu können ohne das Frontend zu wechseln?

LG
datekk
Titel: Re: Fortschritt anzeigen
Beitrag von: daolix am Februar 22, 2017, 15:38:10
hallo
ggf ein einem gewählten modulus entsprechendes doevent einfügen. sowas  verzögert aber etwas den ablauf.
Titel: Re: Fortschritt anzeigen
Beitrag von: datekk am Februar 22, 2017, 15:40:35
Zitatggf ein einem gewählten modulus entsprechendes doevent einfügen

Wie geht das genau?
Titel: Re: Fortschritt anzeigen
Beitrag von: daolix am Februar 22, 2017, 15:43:43
for  lngZähler = ... to ...
if lngZähler mod 10 = 0 then
me.feld = lngZähler
doevents
end if
...
next
Titel: Re: Fortschritt anzeigen
Beitrag von: datekk am Februar 22, 2017, 17:12:35
Funktioniert. Danke :)