Affichage d'une barre de progression

Le
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
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Crevecoeur Jérôme
Le #4286411
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" 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




Raymond
Le #4247741
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" 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




3stone
Le #4247501
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/
--------------------------------------

Publicité
Poster une réponse
Anonyme