Je travail sous Access 2000 et je rencontre un soucis de mise en page
formulaire.
Comment afficher un champ dans un formu que s'il est rempli dans la
table?? S'il l'enregistrement est vide dans la table, je veux que rien
ne s'affiche dans mon form.
Merci par avance pour votre aide et bonne continuation.
Private Sub Form_Current() Me.Visible = (Me.RecordsetClone.RecordCount <> 0) End Sub
Gilbert
"whitehell" a écrit dans le message de news: Bonjour Gilbert,
Ca marche parfaitement! Merci beacoup pour ton aide, mon formulaire commence enfin à ressembler à ce que je souhaite. Cependant je cherche à faire la même manipulation pour un sous formulaire. En effet, j'ai un formulaire qui possède un sous formulaire et pour certaines pièces choisies dans mon formulaire principal, il n'existe pas d'informations dans le sous formulaires. Je voudrais donc que ce sous formulaire ne s'affiche pas s'il est vide... Si tu as des pistes de recherche, fais le moi savoir!
Merci encore
bonne continuation
Whitehell
Erreur, le Clone ne sert à rien
Me.Visible = (Me.Recordset.RecordCount <> 0)
Gilbert
"Gilbert" <ZZZZgilbertvie@tiscali.fr> a écrit dans le message de
news:ewYWLY1AHHA.4592@TK2MSFTNGP03.phx.gbl...
Bonjour
Dans ton sous-formulaire tu utilises:
Private Sub Form_Current()
Me.Visible = (Me.RecordsetClone.RecordCount <> 0)
End Sub
Gilbert
"whitehell" <david.raoult@araymond.com> a écrit dans le message de
news:1162993984.035796.257170@m7g2000cwm.googlegroups.com...
Bonjour Gilbert,
Ca marche parfaitement! Merci beacoup pour ton aide, mon formulaire
commence enfin à ressembler à ce que je souhaite.
Cependant je cherche à faire la même manipulation pour un sous
formulaire. En effet, j'ai un formulaire qui possède un sous
formulaire et pour certaines pièces choisies dans mon formulaire
principal, il n'existe pas d'informations dans le sous formulaires. Je
voudrais donc que ce sous formulaire ne s'affiche pas s'il est vide...
Si tu as des pistes de recherche, fais le moi savoir!
Private Sub Form_Current() Me.Visible = (Me.RecordsetClone.RecordCount <> 0) End Sub
Gilbert
"whitehell" a écrit dans le message de news: Bonjour Gilbert,
Ca marche parfaitement! Merci beacoup pour ton aide, mon formulaire commence enfin à ressembler à ce que je souhaite. Cependant je cherche à faire la même manipulation pour un sous formulaire. En effet, j'ai un formulaire qui possède un sous formulaire et pour certaines pièces choisies dans mon formulaire principal, il n'existe pas d'informations dans le sous formulaires. Je voudrais donc que ce sous formulaire ne s'affiche pas s'il est vide... Si tu as des pistes de recherche, fais le moi savoir!
Je viens de me rendre compte d'un soucis... Tout s'affiche correctement pour mes diverses pièces. Cependant lorsque je veux ajouter un nouvel enregistrement via mon dit formulaire, les champs cachés (si vides) et les sous-formulaires cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer de nouvelles informations... Y'a-t-il donc une manip a faire afin de rendre cette fonction possible??
Whitehell
Rebonjour,
Je viens de me rendre compte d'un soucis...
Tout s'affiche correctement pour mes diverses pièces. Cependant
lorsque je veux ajouter un nouvel enregistrement via mon dit
formulaire, les champs cachés (si vides) et les sous-formulaires
cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer
de nouvelles informations...
Y'a-t-il donc une manip a faire afin de rendre cette fonction
possible??
Je viens de me rendre compte d'un soucis... Tout s'affiche correctement pour mes diverses pièces. Cependant lorsque je veux ajouter un nouvel enregistrement via mon dit formulaire, les champs cachés (si vides) et les sous-formulaires cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer de nouvelles informations... Y'a-t-il donc une manip a faire afin de rendre cette fonction possible??
Whitehell
Gilbert
Bonjour,
Pour savoir si tu es sur un nouvel enregistrement, il faut tester Me.NewRecord
Dans ton formulaire Private Sub Form_Current() Me!RefPSA.Visible = Not IsNull(Me!RefPSA) Or Me.NewRecord End Sub
Dans ton sous-formulaire Private Sub Form_Current() Me.Visible = Me.Recordset.RecordCount <> 0 Or Me.Parent.NewRecord End Sub
Gilbert
"whitehell" a écrit dans le message de news: Rebonjour,
Je viens de me rendre compte d'un soucis... Tout s'affiche correctement pour mes diverses pièces. Cependant lorsque je veux ajouter un nouvel enregistrement via mon dit formulaire, les champs cachés (si vides) et les sous-formulaires cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer de nouvelles informations... Y'a-t-il donc une manip a faire afin de rendre cette fonction possible??
Whitehell
Bonjour,
Pour savoir si tu es sur un nouvel enregistrement, il faut tester
Me.NewRecord
Dans ton formulaire
Private Sub Form_Current()
Me!RefPSA.Visible = Not IsNull(Me!RefPSA) Or Me.NewRecord
End Sub
Dans ton sous-formulaire
Private Sub Form_Current()
Me.Visible = Me.Recordset.RecordCount <> 0 Or Me.Parent.NewRecord
End Sub
Gilbert
"whitehell" <david.raoult@araymond.com> a écrit dans le message de
news:1163067270.483152.77160@f16g2000cwb.googlegroups.com...
Rebonjour,
Je viens de me rendre compte d'un soucis...
Tout s'affiche correctement pour mes diverses pièces. Cependant
lorsque je veux ajouter un nouvel enregistrement via mon dit
formulaire, les champs cachés (si vides) et les sous-formulaires
cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer
de nouvelles informations...
Y'a-t-il donc une manip a faire afin de rendre cette fonction
possible??
Pour savoir si tu es sur un nouvel enregistrement, il faut tester Me.NewRecord
Dans ton formulaire Private Sub Form_Current() Me!RefPSA.Visible = Not IsNull(Me!RefPSA) Or Me.NewRecord End Sub
Dans ton sous-formulaire Private Sub Form_Current() Me.Visible = Me.Recordset.RecordCount <> 0 Or Me.Parent.NewRecord End Sub
Gilbert
"whitehell" a écrit dans le message de news: Rebonjour,
Je viens de me rendre compte d'un soucis... Tout s'affiche correctement pour mes diverses pièces. Cependant lorsque je veux ajouter un nouvel enregistrement via mon dit formulaire, les champs cachés (si vides) et les sous-formulaires cachés (si vides), ne s'affichent pas et je ne peux donc pas rentrer de nouvelles informations... Y'a-t-il donc une manip a faire afin de rendre cette fonction possible??
Whitehell
whitehell
Une fois de plus merci pour ta rapidité à répondre à mes questions. Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel enregistrement dans mon formulaire principal. Les champs masqués s'affichent correctement et je peux rentrer mes données. Cependant, pour les sous formulaires (qui sont au nombre de quatre dans mon form principal), ceux ci s'affichent correctement lors d'un nouvel enregistrement dans ce formulaire principal, cependant lorsque je veux ajouter des enregistrements dans les sous form liés, un message d'erreur apparaît:
Erreur d'execution '2165': Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le nouvel enregistrement dans le dit sous-form, cependant les trois autres sous-form disparaissent...
Aurais-tu une solution à ce soucis?
Merci
Whitehell
Une fois de plus merci pour ta rapidité à répondre à mes questions.
Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel
enregistrement dans mon formulaire principal. Les champs masqués
s'affichent correctement et je peux rentrer mes données.
Cependant, pour les sous formulaires (qui sont au nombre de quatre dans
mon form principal), ceux ci s'affichent correctement lors d'un nouvel
enregistrement dans ce formulaire principal, cependant lorsque je veux
ajouter des enregistrements dans les sous form liés, un message
d'erreur apparaît:
Erreur d'execution '2165':
Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le
nouvel enregistrement dans le dit sous-form, cependant les trois autres
sous-form disparaissent...
Une fois de plus merci pour ta rapidité à répondre à mes questions. Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel enregistrement dans mon formulaire principal. Les champs masqués s'affichent correctement et je peux rentrer mes données. Cependant, pour les sous formulaires (qui sont au nombre de quatre dans mon form principal), ceux ci s'affichent correctement lors d'un nouvel enregistrement dans ce formulaire principal, cependant lorsque je veux ajouter des enregistrements dans les sous form liés, un message d'erreur apparaît:
Erreur d'execution '2165': Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le nouvel enregistrement dans le dit sous-form, cependant les trois autres sous-form disparaissent...
Aurais-tu une solution à ce soucis?
Merci
Whitehell
whitehell
J'ai essayé de changer le code. En remplaçant "Or Me.Parent.NewRecord" par "Or Me.Newrecord", ça fonctionne... Je ne comprends pas vraiment pourquoi mais le principal est que ça marche. Merci
Whitehell
J'ai essayé de changer le code.
En remplaçant "Or Me.Parent.NewRecord" par "Or Me.Newrecord", ça
fonctionne...
Je ne comprends pas vraiment pourquoi mais le principal est que ça
marche.
Merci
J'ai essayé de changer le code. En remplaçant "Or Me.Parent.NewRecord" par "Or Me.Newrecord", ça fonctionne... Je ne comprends pas vraiment pourquoi mais le principal est que ça marche. Merci
Whitehell
whitehell
Ne tiens pas compte de mon dernier message, finalement ça ne fonctionne absolument pas...
Whitehell
Ne tiens pas compte de mon dernier message, finalement ça ne
fonctionne absolument pas...
Ne tiens pas compte de mon dernier message, finalement ça ne fonctionne absolument pas...
Whitehell
Gilbert
Lorsque tu passes de ton formulaire principal à l'un des sous-formulaires, l'enregistrement est sauvegardé automatiquement. Donc Me.Parent.NewRecord devient faux et le controle doit être masqué. Mais comme il est actif, il est impossible de le faire.
Je pense qu'il faut revoir la façon d'afficher ou non tes sous-formulaires. Peut-être les afficher/masquer à partir du formulaire principal avec un bouton de commande qui valide la saisie.
De toutes façons, je trouve dommage (voire anormal) de ne plus pouvoir modifier une saisie. Que fais-tu si une erreur de saisie a été faite dans un des contrôles ou sous-formulaires masqués?
Gilbert
"whitehell" a écrit dans le message de news: Une fois de plus merci pour ta rapidité à répondre à mes questions. Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel enregistrement dans mon formulaire principal. Les champs masqués s'affichent correctement et je peux rentrer mes données. Cependant, pour les sous formulaires (qui sont au nombre de quatre dans mon form principal), ceux ci s'affichent correctement lors d'un nouvel enregistrement dans ce formulaire principal, cependant lorsque je veux ajouter des enregistrements dans les sous form liés, un message d'erreur apparaît:
Erreur d'execution '2165': Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le nouvel enregistrement dans le dit sous-form, cependant les trois autres sous-form disparaissent...
Aurais-tu une solution à ce soucis?
Merci
Whitehell
Lorsque tu passes de ton formulaire principal à l'un des sous-formulaires,
l'enregistrement est sauvegardé automatiquement.
Donc Me.Parent.NewRecord devient faux et le controle doit être masqué.
Mais comme il est actif, il est impossible de le faire.
Je pense qu'il faut revoir la façon d'afficher ou non tes sous-formulaires.
Peut-être les afficher/masquer à partir du formulaire principal avec un
bouton de commande qui valide la saisie.
De toutes façons, je trouve dommage (voire anormal) de ne plus pouvoir
modifier une saisie. Que fais-tu si une erreur de saisie a été faite dans un
des contrôles ou sous-formulaires masqués?
Gilbert
"whitehell" <david.raoult@araymond.com> a écrit dans le message de
news:1163079356.996586.96630@h54g2000cwb.googlegroups.com...
Une fois de plus merci pour ta rapidité à répondre à mes questions.
Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel
enregistrement dans mon formulaire principal. Les champs masqués
s'affichent correctement et je peux rentrer mes données.
Cependant, pour les sous formulaires (qui sont au nombre de quatre dans
mon form principal), ceux ci s'affichent correctement lors d'un nouvel
enregistrement dans ce formulaire principal, cependant lorsque je veux
ajouter des enregistrements dans les sous form liés, un message
d'erreur apparaît:
Erreur d'execution '2165':
Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le
nouvel enregistrement dans le dit sous-form, cependant les trois autres
sous-form disparaissent...
Lorsque tu passes de ton formulaire principal à l'un des sous-formulaires, l'enregistrement est sauvegardé automatiquement. Donc Me.Parent.NewRecord devient faux et le controle doit être masqué. Mais comme il est actif, il est impossible de le faire.
Je pense qu'il faut revoir la façon d'afficher ou non tes sous-formulaires. Peut-être les afficher/masquer à partir du formulaire principal avec un bouton de commande qui valide la saisie.
De toutes façons, je trouve dommage (voire anormal) de ne plus pouvoir modifier une saisie. Que fais-tu si une erreur de saisie a été faite dans un des contrôles ou sous-formulaires masqués?
Gilbert
"whitehell" a écrit dans le message de news: Une fois de plus merci pour ta rapidité à répondre à mes questions. Le code Or Newrecord fonctionne lors de l'ajout d'un nouvel enregistrement dans mon formulaire principal. Les champs masqués s'affichent correctement et je peux rentrer mes données. Cependant, pour les sous formulaires (qui sont au nombre de quatre dans mon form principal), ceux ci s'affichent correctement lors d'un nouvel enregistrement dans ce formulaire principal, cependant lorsque je veux ajouter des enregistrements dans les sous form liés, un message d'erreur apparaît:
Erreur d'execution '2165': Impossible de masquer le contrôle actif
Si je n'en tiens pas compte (en cliquant sur "fin") je peux entrer le nouvel enregistrement dans le dit sous-form, cependant les trois autres sous-form disparaissent...
Aurais-tu une solution à ce soucis?
Merci
Whitehell
whitehell
Tu as raison, je voulais simplement essayer d'améliorer ma mise en page car je me retrouve avec un formulaire qui possède plusieurs sous-formulaires assez souvent vides... Je vais suivre ton conseil et privilégier la fonctionnalité à l'esthétique. En tout cas merci pour tout!
Whitehell
Tu as raison, je voulais simplement essayer d'améliorer ma mise en
page car je me retrouve avec un formulaire qui possède plusieurs
sous-formulaires assez souvent vides...
Je vais suivre ton conseil et privilégier la fonctionnalité à
l'esthétique.
En tout cas merci pour tout!
Tu as raison, je voulais simplement essayer d'améliorer ma mise en page car je me retrouve avec un formulaire qui possède plusieurs sous-formulaires assez souvent vides... Je vais suivre ton conseil et privilégier la fonctionnalité à l'esthétique. En tout cas merci pour tout!