OVH Cloud OVH Cloud

récuperer la valeur d'un controle dans un état

4 réponses
Avatar
brucat
Bonsoir,

voici où je peche.........

J'ai un formulaire A, je selection dans une liste déroulante(listinitiale)
un nom (la liste ne vient pas d'une table)
A l'aide d'un bouton, j'ouvre un état et j'affiche la valeur de la liste
dans un controle (initiale)
le formulaire se ferme à l'ouverture de l'état

J'ai essayé dans la source du controle de l'état de faire référence au
controle de mon formulaire
Mais cela ne fonctionne pas
J'ai donc crée un code mais je n'arive toujours pas à récuperer la valeur.

Private Sub Report_Open(Cancel As Integer)

Dim init As String

init = Forms![FAttestation]![ListInitiale].Value

DoCmd.Close acForm, "FAttestation"

Me!initiale.Value = init

End Sub

Je suppose avoir une erreur dans le Me mais je suis coincé

merci pour votre aide

Brucat

4 réponses

Avatar
Raymond [mvp]
Bonsoir.
il y a une erreur dans les événements.
d'abord, le Dim init doit être au niveau global du code sinon il n'est pas
accessible par tout le code. Ensuite le chargement de initiale doit être
fait dans l'événement "au formatage" de la section où il se trouve ( détail
par exemple)

Dim init As String
Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
initiale = init
End Sub
Private Sub Report_Open(Cancel As Integer)
init = Forms![FAttestation]![ListInitiale]
DoCmd.Close acForm, "FAttestation"
End Sub

tu peux aussi , pour simplifier, ne mettre le formulaire qu'en invisible et
le fermer à la fin de l'état ce qui permet d'accéder directement à tous ses
contrôles.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"brucat" a écrit dans le message de news:
cvd71k$pfn$
Bonsoir,

voici où je peche.........

J'ai un formulaire A, je selection dans une liste déroulante(listinitiale)
un nom (la liste ne vient pas d'une table)
A l'aide d'un bouton, j'ouvre un état et j'affiche la valeur de la liste
dans un controle (initiale)
le formulaire se ferme à l'ouverture de l'état

J'ai essayé dans la source du controle de l'état de faire référence au
controle de mon formulaire
Mais cela ne fonctionne pas
J'ai donc crée un code mais je n'arive toujours pas à récuperer la valeur.

Private Sub Report_Open(Cancel As Integer)

Dim init As String

init = Forms![FAttestation]![ListInitiale].Value

DoCmd.Close acForm, "FAttestation"

Me!initiale.Value = init

End Sub

Je suppose avoir une erreur dans le Me mais je suis coincé

merci pour votre aide

Brucat



Avatar
brucat
merci pour cette réponse.
Evidememnt j'aurai pu faire plus simple mais le plus simple c'est pas
rigolo.

Dansle même esprit (si je peux abuser).

Formulaire A : 2 controles dates [du] et [au]
L'état doit afficher uniquement les dates de session entre [du] et [au]

Normalement, je fais "entre Formulaires![FDate]![Du] et
Formulaires![FDate]![Au] " dans la zone Critere du controle date de ma
requete mais comme je ferme le formulaire
cela ne fonctionne pas
J'ai essayé avec between mais à nouveau le chaos.

Merci encore pour cette explication

Brucat

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.
il y a une erreur dans les événements.
d'abord, le Dim init doit être au niveau global du code sinon il n'est pas
accessible par tout le code. Ensuite le chargement de initiale doit être
fait dans l'événement "au formatage" de la section où il se trouve (
détail par exemple)

Dim init As String
Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
initiale = init
End Sub
Private Sub Report_Open(Cancel As Integer)
init = Forms![FAttestation]![ListInitiale]
DoCmd.Close acForm, "FAttestation"
End Sub

tu peux aussi , pour simplifier, ne mettre le formulaire qu'en invisible
et le fermer à la fin de l'état ce qui permet d'accéder directement à tous
ses contrôles.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"brucat" a écrit dans le message de news:
cvd71k$pfn$
Bonsoir,

voici où je peche.........

J'ai un formulaire A, je selection dans une liste
déroulante(listinitiale) un nom (la liste ne vient pas d'une table)
A l'aide d'un bouton, j'ouvre un état et j'affiche la valeur de la liste
dans un controle (initiale)
le formulaire se ferme à l'ouverture de l'état

J'ai essayé dans la source du controle de l'état de faire référence au
controle de mon formulaire
Mais cela ne fonctionne pas
J'ai donc crée un code mais je n'arive toujours pas à récuperer la
valeur.

Private Sub Report_Open(Cancel As Integer)

Dim init As String

init = Forms![FAttestation]![ListInitiale].Value

DoCmd.Close acForm, "FAttestation"

Me!initiale.Value = init

End Sub

Je suppose avoir une erreur dans le Me mais je suis coincé

merci pour votre aide

Brucat







Avatar
Raymond [mvp]
il faut garder le formulaire ouvert ou du moins invisible jusqu'à la
fermeture de l'état et le fermer en même temps que l'état.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"brucat" a écrit dans le message de news:
cvflsm$i05$
merci pour cette réponse.
Evidememnt j'aurai pu faire plus simple mais le plus simple c'est pas
rigolo.

Dansle même esprit (si je peux abuser).

Formulaire A : 2 controles dates [du] et [au]
L'état doit afficher uniquement les dates de session entre [du] et [au]

Normalement, je fais "entre Formulaires![FDate]![Du] et
Formulaires![FDate]![Au] " dans la zone Critere du controle date de ma
requete mais comme je ferme le formulaire
cela ne fonctionne pas
J'ai essayé avec between mais à nouveau le chaos.

Merci encore pour cette explication

Brucat



Avatar
brucat
pas mal l'idée
je teste
"Raymond [mvp]" a écrit dans le message de
news:
il faut garder le formulaire ouvert ou du moins invisible jusqu'à la
fermeture de l'état et le fermer en même temps que l'état.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"brucat" a écrit dans le message de news:
cvflsm$i05$
merci pour cette réponse.
Evidememnt j'aurai pu faire plus simple mais le plus simple c'est pas
rigolo.

Dansle même esprit (si je peux abuser).

Formulaire A : 2 controles dates [du] et [au]
L'état doit afficher uniquement les dates de session entre [du] et [au]

Normalement, je fais "entre Formulaires![FDate]![Du] et
Formulaires![FDate]![Au] " dans la zone Critere du controle date de ma
requete mais comme je ferme le formulaire
cela ne fonctionne pas
J'ai essayé avec between mais à nouveau le chaos.

Merci encore pour cette explication

Brucat