Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Damien Mermoz
Cela dépend de ta version d'access. Sur 2000 et Xp il y a une propriété loaded du formulaire. Perso j'utilise une fonction ce qui me permet de m'en servir dans mes requetes. Tu crées un nouveau module et tu ajoutes ceci.
Public Function IsLoaded(ByVal strFormName As String) As Integer
'From Northwind sample database: 'Renvoie la valeur vrai si un formulaire est chargé
'Ces variables sont utilisées pour tester la valeur renvoyées par la fonction SysCmd ' et la vue actuel des formulaires.
' Le premier If utilise la fonction Sycdm pour vérifier l'état actuel ' du formulaire testé. Il y a 4 réponses possibles : Pas ouvert ou inexistant, ' ouvert, nouveau, ou modifié mais pas sauvegardé.
If SysCmd(acSysCmdGetObjectState, acForm, strFormName) <> conObjStateClosed Then 'Le second if vérifie la vue actuel du formulaire testé. ' dans le cas où le premier if renvoie une valeure vraie. ' Si le formulaire testé est en vue normal, la fonction renvera la valeur ' vrai. Si le formulaire est en mode création la fonction renverra la valeur faux.
If Forms(strFormName).CurrentView <> conDesignView Then IsLoaded = True End If
Pour t'en servir dans du code ça peut donner par exemple if isloaded("Nomduformulaire") = true then ....
Dans une requete par exemple where Tonchamp= iif(isloaded(NomFormulaire),...,)
A + Damien.
"rvdb" a écrit dans le message news: 3f59c4b9$0$2796$
Bonjour, quelle est la formule pour detecter si un formulaire est ouvert ou
pas ?
Cela dépend de ta version d'access. Sur 2000 et Xp il y a une propriété
loaded du formulaire. Perso j'utilise une fonction ce qui me permet de m'en
servir dans mes requetes.
Tu crées un nouveau module et tu ajoutes ceci.
Public Function IsLoaded(ByVal strFormName As String) As Integer
'From Northwind sample database:
'Renvoie la valeur vrai si un formulaire est chargé
'Ces variables sont utilisées pour tester la valeur renvoyées par la
fonction SysCmd
' et la vue actuel des formulaires.
' Le premier If utilise la fonction Sycdm pour vérifier l'état actuel
' du formulaire testé. Il y a 4 réponses possibles : Pas ouvert ou
inexistant,
' ouvert, nouveau, ou modifié mais pas sauvegardé.
If SysCmd(acSysCmdGetObjectState, acForm, strFormName) <>
conObjStateClosed Then
'Le second if vérifie la vue actuel du formulaire testé.
' dans le cas où le premier if renvoie une valeure vraie.
' Si le formulaire testé est en vue normal, la fonction renvera la valeur
' vrai. Si le formulaire est en mode création la fonction renverra la
valeur faux.
If Forms(strFormName).CurrentView <> conDesignView Then
IsLoaded = True
End If
Cela dépend de ta version d'access. Sur 2000 et Xp il y a une propriété loaded du formulaire. Perso j'utilise une fonction ce qui me permet de m'en servir dans mes requetes. Tu crées un nouveau module et tu ajoutes ceci.
Public Function IsLoaded(ByVal strFormName As String) As Integer
'From Northwind sample database: 'Renvoie la valeur vrai si un formulaire est chargé
'Ces variables sont utilisées pour tester la valeur renvoyées par la fonction SysCmd ' et la vue actuel des formulaires.
' Le premier If utilise la fonction Sycdm pour vérifier l'état actuel ' du formulaire testé. Il y a 4 réponses possibles : Pas ouvert ou inexistant, ' ouvert, nouveau, ou modifié mais pas sauvegardé.
If SysCmd(acSysCmdGetObjectState, acForm, strFormName) <> conObjStateClosed Then 'Le second if vérifie la vue actuel du formulaire testé. ' dans le cas où le premier if renvoie une valeure vraie. ' Si le formulaire testé est en vue normal, la fonction renvera la valeur ' vrai. Si le formulaire est en mode création la fonction renverra la valeur faux.
If Forms(strFormName).CurrentView <> conDesignView Then IsLoaded = True End If