OVH Cloud OVH Cloud

Patientez pendant le Chargement

5 réponses
Avatar
marco
Bonjour,

Je souhaite qu'une message box (ou un formulaire) s'ouvre
avec la mention "veuillez patienter pendant l'ouverture du
formulaire" au chargement du formulaire en question, puis
se referme automatiquement a la fin du chargement.

Mais que faire donc ?

merci !
marco

5 réponses

Avatar
3stone
Salut,

| Je souhaite qu'une message box (ou un formulaire) s'ouvre
| avec la mention "veuillez patienter pendant l'ouverture du
| formulaire" au chargement du formulaire en question, puis
| se referme automatiquement a la fin du chargement.


Ben...
- tu ouvre ton formulaire d'information...
- puis ton formulaire "en question", en mode non visible,
- éventuel test.. sur le résultat...
- tu ferme le formulaire d'infos,
- tu rends visible le form "en question"



--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
Avatar
marco
Pourrais je avoir le détail du test à effectuer ?
Je ne suis pas très fort sur access...

merci bien,

-----Message d'origine-----
Salut,

| Je souhaite qu'une message box (ou un formulaire)
s'ouvre

| avec la mention "veuillez patienter pendant l'ouverture
du

| formulaire" au chargement du formulaire en question,
puis

| se referme automatiquement a la fin du chargement.


Ben...
- tu ouvre ton formulaire d'information...
- puis ton formulaire "en question", en mode non visible,
- éventuel test.. sur le résultat...
- tu ferme le formulaire d'infos,
- tu rends visible le form "en question"



--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------




.



Avatar
marco
Pourrais je avoir le détail du test à effectuer ?
Je ne suis pas très fort sur access...

merci bien,

-----Message d'origine-----
Salut,

| Je souhaite qu'une message box (ou un formulaire)
s'ouvre

| avec la mention "veuillez patienter pendant l'ouverture
du

| formulaire" au chargement du formulaire en question,
puis

| se referme automatiquement a la fin du chargement.


Ben...
- tu ouvre ton formulaire d'information...
- puis ton formulaire "en question", en mode non visible,
- éventuel test.. sur le résultat...
- tu ferme le formulaire d'infos,
- tu rends visible le form "en question"



--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------




.



Avatar
3stone
Salut,


Pourrais je avoir le détail du test à effectuer ?



Tu peux essayer ceci...
Lorsque tu crée un bouton pour ouvrir un formulaire,
l'assistant te crée un code que tu peux compléter...

Crée aussi un petit formulaire sur lequel tu mets seulement
une étiquette avec la phrase qui fera patienter...
Et fixe la propriété "Fenêtre indépendante" à Oui.
Tu le nomme "frm_Patientez" par exemple.

'//---------------------------------------------------
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "frm_MonFormulaire_lent_a_ouvrir"

DoCmd.OpenForm "frm_Patientez"

DoCmd.OpenForm stDocName, , , stLinkCriteria

Do
DoEvents
Loop Until IsLoaded(stDocName)

DoCmd.Close acForm, "frm_Patientez", acSaveNo
'//----------------------------------------------------

En plus, tu colle cette fonction dans un module général (onglet Modules)
et sauve le en le nomment "mod_IsLoaded"


Function IsLoaded(FormName)
IsLoaded = (SysCmd(acSysCmdGetObjectState, acForm, FormName) <> 0)
End Function


Ok ?


--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
Avatar
3stone
re,

Mais j'ai un mal fou à l'appliquer.

on dirait, oui... tu as tout inversé ! ;-)


Sous le bouton qui ouvre le formulaire lent, il y a du code dans l'événement "Sur clic"...
Tu complète le code pour qu'il ressemble à ceci...

'//---------------------------------------------------
Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "frm_MonFormulaire_lent_a_ouvrir" ' <<<< ici tu adapte

DoCmd.OpenForm "frm_Patientez" ' <<< non du formulaire avec le message

DoCmd.OpenForm stDocName, , , stLinkCriteria

'--- ajoute les 4 lignes suivantes
Do
DoEvents
Loop Until IsLoaded(stDocName)

DoCmd.Close acForm, "frm_Patientez", acSaveNo

'//----------------------------------------------------



Tu crée un petit formulaire avec une étiquette avec ton message,
ce petit formulaire, tu le nomme: "frm_Patientez"

- dans frm_patientez je mets fen indépendante : OUI




Tu colle la fonction ci-dessous dans un nouveau module
(dans la fenêtre "base de données" à l'onglet "Modules"
là, tu fait nouveau, et tu colle ...

'//-----------------------------------------------------
Function IsLoaded(FormName)
IsLoaded = (SysCmd(acSysCmdGetObjectState, acForm,
FormName) <> 0)
End Function
'//-----------------------------------------------------

ensuite, tu sauve en donnant comme nom "mod_IsLoaded"
ou bien "module toto" si cela te plait mieux ;-)))


Ok ?


--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------