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

ouverture for et ssform même mode

1 réponse
Avatar
Opium
bonjour à tous,
presque fraiche et reposée aujoud'hui et pourtant je galère encore.
Voici ma question
j'ai une ouverture de formulaire. Selon certain critère je voudrai choisir à
l'overture du formlaire que le sous-formulaire s'ouvre en mode accformadd ou
mode accformreadonly
j'ai un fom "création de liasse" sur lequel j'ai un champ "fermée" et un btn
"ouverture"
sur clic de mon btn "ouverture" ouverture de mon form principal "liasse"
selon qe j'ai une valeur true ou false sur mon champ fermée, je commande par
bouton l'ouverture d'un fomulaire
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "liasse"
stLinkCriteria = "[liasse]=" & "'" & Me![liasse] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
jusque là pas e pb sauf:
comment indiquer à access que le sus formulaire doit être chargé en mode
lecture ou ajout de donnée selon le résultat de mon if. Je parle bien sur du
sous formulaire et non du form princpal car sinon je me doute qu'à l'open
form, il suffirait d'ajouter accformreadonly ou autre
mais mon formulaire ouvre automatiquement mon sous form alors comment
changer la propriété de celui ci?
merci
opium

1 réponse

Avatar
3stone
Salut,

Opium wrote:
bonjour à tous,
presque fraiche et reposée aujoud'hui et pourtant je galère encore.
Voici ma question
j'ai une ouverture de formulaire. Selon certain critère je voudrai
choisir à l'overture du formlaire que le sous-formulaire s'ouvre en
mode accformadd ou mode accformreadonly
j'ai un fom "création de liasse" sur lequel j'ai un champ "fermée" et
un btn "ouverture"
sur clic de mon btn "ouverture" ouverture de mon form principal
"liasse" selon qe j'ai une valeur true ou false sur mon champ fermée,
je commande par bouton l'ouverture d'un fomulaire
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "liasse"
stLinkCriteria = "[liasse]=" & "'" & Me![liasse] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
jusque là pas e pb sauf:
comment indiquer à access que le sus formulaire doit être chargé en
mode lecture ou ajout de donnée selon le résultat de mon if. Je parle
bien sur du sous formulaire et non du form princpal car sinon je me
doute qu'à l'open form, il suffirait d'ajouter accformreadonly ou
autre
mais mon formulaire ouvre automatiquement mon sous form alors comment
changer la propriété de celui ci?
merci
opium




Comme déjà expliqué, il faut compléter ton OpenForm et utiliser
l'argument "OpenArgs" dans lequel tu peux renseigner ce que tu veux.

Esuite, dans le formulaire ouvert, tu interroge ce paramètre

Dim strArgument As String
if Not IsNull(Me.OpenArgs) Then
strArgument = Me.OpenArgs
end if

=> maintenant, strArgument contient ce que tu y a placé lors
de l'appel d'ouverture.
Il suffit d'agir en conséquence.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)