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

Recherche de syntaxe VBA

2 réponses
Avatar
Nesta
Bonsoir à tous,

J'ai un formulaire, avec un sous-formulaire en mode feuille de données géré
par une requête.
Je souhaite récupérer les valeurs des champs de ce sous-formulaire pour les
enregistrer dans une table, mais je ne connais pas la syntaxe pour cela.
Quand il s'agit d'une zone de texte dans un formulaire, pas de problème,
exemple : "RstReclamations!DateRecla = Me!DateRecla",

- RstReclamations : table où doit être mis l'enregistrement
- DateRecla : champs dans lequel insérer l'enregistrement
- Me : formulaire ouvert sur lequel on travaille
- DateRecla : zone de texte du formulaire où l'on doit récupérer la valeur.

Mais pour avoir la valeur d'un champs d'un sous-formulaire, quelle syntaxe
utiliser ?

Merci pour vos précieux conseils !


Nesta

2 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

Normalement la synthaxe est la suivante :

RstReclamations!DateRecla=Forms![TonFormulaire]![TonSousFormulaire]![TaZoneT
exte]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Nesta" a écrit dans le message news:
42685607$0$27265$
Bonsoir à tous,

J'ai un formulaire, avec un sous-formulaire en mode feuille de données
géré

par une requête.
Je souhaite récupérer les valeurs des champs de ce sous-formulaire pour
les

enregistrer dans une table, mais je ne connais pas la syntaxe pour cela.
Quand il s'agit d'une zone de texte dans un formulaire, pas de problème,
exemple : "RstReclamations!DateRecla = Me!DateRecla",

- RstReclamations : table où doit être mis l'enregistrement
- DateRecla : champs dans lequel insérer l'enregistrement
- Me : formulaire ouvert sur lequel on travaille
- DateRecla : zone de texte du formulaire où l'on doit récupérer la
valeur.


Mais pour avoir la valeur d'un champs d'un sous-formulaire, quelle syntaxe
utiliser ?

Merci pour vos précieux conseils !


Nesta




Avatar
Nesta
Bonsoir Jessy,

Merci pour la syntaxe.
J'ai essayé et ça ne ftcionnait pas. En regardant dans l'aide, j'ai fini par
trouver la syntaxe suivante :

RstConcerner!LibArticle = Forms!F_RECLAMATIONS.SF_Articles!LibArt

- F_RECLAMATIONS : formulaire
- SF_Articles : Sous-formulaire
- LibArt : champ du sous formulaire

Ca semble ftcionner.
Maintenant, j'ai un autre problème (eh oui, encore un !) : j'ouvre en fait 2
recordset pour y enregistrer les données.
Pour le premier, tout se passe bien ; pour le 2e (celui qui contient le
sous-form), j'ai le message d'erreur suivant :

"Vous ne pouvez pas ajouter ou modifier un enregistrement car
l'enregistrement associé est requis dans la table réclamations".

Je pense peut-être à une erreur dans les relations entres les tables, mais
j'en suis pas sûr...je sèche.

Voici mon code :

------------------------------------------------------------------------------

'---Declaration des Recordset---
Set BddReclamations = CurrentDb
Set RstReclamations = BddReclamations.OpenRecordset("RECLAMATIONS")
Set RstConcerner = BddReclamations.OpenRecordset("CONCERNER")

'---Enregistrement des données dans les champs correspondant du
Recordset ---
RstReclamations.AddNew
RstReclamations!DateRecla = Me!DateRecla
RstReclamations!NumBordereau = Me!BL
RstReclamations!DateLivr = Me!date_livraison

RstConcerner.AddNew
RstConcerner!Manquant = Forms!F_RECLAMATIONS.SF_Articles!Manquant


'---Fermeture des Recordset---
RstReclamations.Update
RstReclamations.Close

RstConcerner.Update
RstConcerner.Close
----------------------------------------------------------------

Est-ce que tu saurais pourquoi j'ai cette erreur ? Merci d'avance


Nesta




Bonjour

Normalement la synthaxe est la suivante :

RstReclamations!DateRecla=Forms![TonFormulaire]![TonSousFormulaire]![TaZoneT
exte]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Nesta" a écrit dans le message news:
42685607$0$27265$
Bonsoir à tous,

J'ai un formulaire, avec un sous-formulaire en mode feuille de données
géré

par une requête.
Je souhaite récupérer les valeurs des champs de ce sous-formulaire pour
les

enregistrer dans une table, mais je ne connais pas la syntaxe pour cela.
Quand il s'agit d'une zone de texte dans un formulaire, pas de problème,
exemple : "RstReclamations!DateRecla = Me!DateRecla",

- RstReclamations : table où doit être mis l'enregistrement
- DateRecla : champs dans lequel insérer l'enregistrement
- Me : formulaire ouvert sur lequel on travaille
- DateRecla : zone de texte du formulaire où l'on doit récupérer la
valeur.


Mais pour avoir la valeur d'un champs d'un sous-formulaire, quelle syntaxe
utiliser ?

Merci pour vos précieux conseils !


Nesta