Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Affichage d'une barre de progression

3 réponses
Avatar
NetChris
Bonjour Ami(e)s programmeurs,

J'ai un traitement sur 6500 enregs environ, avec une boucle du premier au
dernier enreg.
Le traitement marche super !
Mais impossible d'afficher la barre de progression pendant le traitement (si
je stop le traitement, je vois bien l'avancement de la barre, mais pas
pendant !)
Pourtant cette séquence est bien dans le boucle, et la barre de statut
affiche bien mon % et la valeur de Me.txtProgression.Width
J'ai vérifié .visible, .enabled, ....et la couleur ! Je
bloque !


Do Until RsCF.EOF 'boucle sur champ
fusion_Batch
...
...
'Affichage de la progression + barre de statut
Me.txtProgression = Format$((intX / VarX), "0.00%")
Me.txtProgression.Width = MaLongueur * (intX / VarX)
DoCmd.Echo True, Format((intX / VarX), "0.00%") & " " &
Me.txtProgression.Width & "/" & VarX
...
...
RsCF.MoveNext
intX = intX + 1
Loop

NetChris

3 réponses

Avatar
Crevecoeur Jérôme
essayez un Me.Repaint
cordialement

--
----------------------------------------------------------------------------
--------------------
Crévecoeur Jérôme

ACS INFORMATIQUE
122,rue du Château d'orgemont
49000 ANGERS
Tel: 02 41 68 42 36 Fax: 02 41 68 42 48
----------------------------------------------------------------------------
---------------------
"NetChris" a écrit dans le message de
news:bjhh5g$te6$
Bonjour Ami(e)s programmeurs,

J'ai un traitement sur 6500 enregs environ, avec une boucle du premier au
dernier enreg.
Le traitement marche super !
Mais impossible d'afficher la barre de progression pendant le traitement
(si

je stop le traitement, je vois bien l'avancement de la barre, mais pas
pendant !)
Pourtant cette séquence est bien dans le boucle, et la barre de statut
affiche bien mon % et la valeur de Me.txtProgression.Width
J'ai vérifié .visible, .enabled, ....et la couleur !
Je

bloque !


Do Until RsCF.EOF 'boucle sur champ
fusion_Batch
...
...
'Affichage de la progression + barre de statut
Me.txtProgression = Format$((intX / VarX), "0.00%")
Me.txtProgression.Width = MaLongueur * (intX / VarX)
DoCmd.Echo True, Format((intX / VarX), "0.00%") & " " &
Me.txtProgression.Width & "/" & VarX
...
...
RsCF.MoveNext
intX = intX + 1
Loop

NetChris




Avatar
Raymond
Bonjour.

Tout dépend du genre de barre de progression, activex, zone de texte ......

il faudrait placer un DoEvents dans ta boucle pour permettre à access de
respirer un peu et d'exécuter la mise à jour de ta barre.

--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"NetChris" a écrit dans le message de
news:bjhh5g$te6$
Bonjour Ami(e)s programmeurs,

J'ai un traitement sur 6500 enregs environ, avec une boucle du premier au
dernier enreg.
Le traitement marche super !
Mais impossible d'afficher la barre de progression pendant le traitement
(s

je stop le traitement, je vois bien l'avancement de la barre, mais pas
pendant !)
Pourtant cette séquence est bien dans le boucle, et la barre de statut
affiche bien mon % et la valeur de Me.txtProgression.Width
J'ai vérifié .visible, .enabled, ....et la couleur !
Je

bloque !


Do Until RsCF.EOF 'boucle sur champ
fusion_Batch
...
...
'Affichage de la progression + barre de statut
Me.txtProgression = Format$((intX / VarX), "0.00%")
Me.txtProgression.Width = MaLongueur * (intX / VarX)
DoCmd.Echo True, Format((intX / VarX), "0.00%") & " " &
Me.txtProgression.Width & "/" & VarX
...
...
RsCF.MoveNext
intX = intX + 1
Loop

NetChris




Avatar
3stone
Salut,

Raymond
il faudrait placer un DoEvents dans ta boucle pour permettre à access de
respirer un peu et d'exécuter la mise à jour de ta barre.




Oui, mais pas exécutable à chaque boucle... 6500 DoEvents... ca occupe ;-)

Donc, inclure un "pas"...


RsCF.MoveNext
intX = intX + 1

If intX Mod 100 = 0 then DoEvents

Loop



Le test ( if inX...) étant beaucoup plus rapide que le DoEvents


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/
--------------------------------------