Access - Attendre le Refresh du form avant de continuer l'exécution [Résolu]

Messages postés
444
Date d'inscription
mardi 27 mars 2007
Dernière intervention
1 mars 2011
- - Dernière réponse : JM247L
Messages postés
444
Date d'inscription
mardi 27 mars 2007
Dernière intervention
1 mars 2011
- 30 juin 2008 à 10:04
Bonjour,
Cela fait 12 ans que je n'ai plus programmé VBA avec Access et j'ai pas mal de soucis
Le plus problématique est le suivant

Je gére des % dans un champ "Mat_Percentage" et le % cumulé dans un autre "Mat_CumPercentage"
Sur perte focus du champ "Mat_Percentage" , je vérifie que le champ "Mat_CumPercentage n'excède pas 100
Pour ce faire j'utilise le code ci-dessous

Private Sub ComponentQty_EntryField_LostFocus()
  Me.Refresh ' Actualise le form
  CheckCumulativePercentage   ' Vérifie le % cumulé ... Initialise à True la var ErrorUnderControl  si > 100
  If ErrorUnderControl = True Then   ' Si >100
    '
  End If
End Sub

Le problème c'est que l'actualisation du champ "Mat_CumPercentage" ne se fait qu'après l'affichage du message si >100
J'ai essayé avec une boucle For Next pour laisser le temps de mise à jour mais ça ne change rien

Merci de votre aide
Cliquer "Réponse Acceptée"
Partageons Notre Savoir & Nos Acquis - JML
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Dernière intervention
28 août 2015
3
Merci
Salut
C'est surement parce que le programme occupe tout le temps CPU.
Ajoute des  DoEvents  deci-delà, ça donnera le temps à la machine de gérer son graphisme

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 97 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Jack
Messages postés
444
Date d'inscription
mardi 27 mars 2007
Dernière intervention
1 mars 2011
0
Merci
Salut,
En fait il ne s'agit pas d'un problème de refresh d'écran mais de refresh de calcul dans une zone
J'ai essayé avec .Requery mais rien de nouveau
Finalement j'ai changé le controle de place en le mettant au niveau du formulaire principal "sur changement d'enregistrement ... Et ça fonctionne correctement
J'accepte ta réponse pour fermer le point
Merci et bonne journée
Cliquer "Réponse Acceptée"
Partageons Notre Savoir & Nos Acquis
- JML
Commenter la réponse de JM247L

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.