ACCESS - Parcours de formulaire - Syntaxe
Je cherche à faire des parcours de formulaire et des ses sous formulaires mon problème c que je n'arrive pas à appeller mon sous-formulaire cf le designer
J ai un variable de type form qui designe mon formulaire courant quelle est la syntaxe pour designer le sous formulaire ?
Merci d avance
Julie.
23 réponses
Problème central : appeler un sous-formulaire à partir du formulaire dans Access pose des difficultés lorsque noms contiennent caractères spéciaux ou lorsque la casse et la syntaxe de référence ne sont pas respectées. Des solutions essentielles incluent l'encadrement des noms d'objets avec des crochets pour les espaces ou les tirets, l'utilisation de la référence Forms!NomFormulaire!NomSousFormulaire ou Form!NomSousFormulaire et le respect de la casse. En pratique, les échanges suggèrent aussi de vérifier les requêtes et le contexte du formulaire afin d'éviter les erreurs liées à la casse, aux guillemets, ou à l'utilisation d'un nom qui change lors de modifications.
-
Oué c le plus adapté kestion interface ...
Puis j ai pu le tps de refaire
Julie. -
ModérateurUne question toute bête (mais comme je ne connais pas ton cahier des charges ;-)) :
Tu es obligée de mettre de sous-forms dans les sous-forms qui sont dans les sous-forms qui sont .... ?
Tu ne peux pas utiliser des listes déroulantes ou des onglets ?
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Restrictions: les formulaires ne doivent pas être affichées en mode feuille de données.
Super ! :s
Julie. -
ModérateurJette un oeil ici :
http://access.seneque.free.fr/sous_formulaires.htm
C'est drôle !
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
"Impossible de trouver le formulaire 'Ligne_Contrat' ..."
:(
Merci tout de même peut etre que le contexte ne lui permet pas de situer le formulaire
Julie. -
ModérateurJ'ai jamais mis plus de 2 forms en sous-forms, amis je verrais plutôt cela comme syntaxe :
forms![ligne_contrat].form![silhouette].form![finitions]
ou
forms![ligne_contrat].forms![silhouette].form![finitions]
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Bon je vais donner toutes les infos peut etre quelqu un pourra me donner la reponse :
Voici la hierarchie de mes formulaires
Ligne_Contrat>silhouette>Finitions>Motorisation>Couleur_ext>Couleur_int
J ai la variable mon_form = silhouette
Je veux apl ma fonction sur le sous formulaire Finitions
testFormulaire = testFormulaire(????)
Que dois je mettre dans ????
J ai test Forms!silhouette.Form!Finitions
et d autre à chaque fois il me repond impossible de trouver le formulaire 'silhouette'
Merci (notamment à Blux pour sa patience ;) )
Julie. -
ModérateurC'est ce que je dis, il a gardé quelque part l'ancien nom, cela arrive avec les sous-formulaires, vois mon message 14...
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Mais c de la folie c pas sorcier ce que je veux faire et j y arrive pas ! J hallucine :(
Maintenant que j ai mon problème précédent, j ai changé mes noms de formulaires il reconnait jamais le formulaire l'erreur c
"impossible de trouver le formulaire ..." -
ModérateurIl se peut qu'ACCESS n'ait pas véritablement changé le nom du sous-formulaire, cela arrive lorsqu'on le renomme. Vérifie que le nom est correct partout (cliquer une fois sur le sous-form et vérifier ses propriétés...)
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
lol caractères spéciaux pardon oué g mis les [] mais il es pas content du coup je change le nom de mes formulaires en les simplifiant mais maintenant mon formulaire foire sur une liste déroulante : dans mon dernier sous formulaire j ai une liste déroulante qui trouve ses valeurs grace à une requete SQL mais cette requete utilise la clé qui est dans ce formulaire sur la meme ligne la requete en elle meme marche bien mais quand j execute le formulaire il me trouve pas cette clé qui est pourtant dans le formulaire il m ouvre alors une boite de dialogue pour me la demander ... Galère :(
Julie. -
ModérateurElles foirent ?
C'est quoi le message d'erreur ?
Tu as mis des [] pour les noms de champ avec des caractères "spécials" ?
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Bonjour,
Bon g ce problème de caractères spécials et si je modifie le nom de mes formulaires g des requetes qui foire (meme en changeant les noms dedans ! je vois pas pkoi) ke faire ? HELP
Julie. -
ModérateurAh ben voui !
Je debuggue pas l'algorithmique dans les pensées... ;-)
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Bon au moins il execute avec ca :) merci bien
mais ca fait pas encore ce que je veux mais ca doit etre mon prog qui est foireux ;) faut que je debug merci bien :)
Julie. -
ModérateurQuand un obJet ACCESS contient des caractères spéciaux (espace...), on le met généralement entre crochets : [mon form]...
Il doit reconnaitre le '-' comme caractère spécial (c'est le signe de la soustraction en VBA, et il n'aime pas qu'on le mette dans les noms d'objets, son analyseur de syntaxe se perd un peu les pédales...)
Ca t'aiderait ?
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
OK mais j ai essayé de mette le nom complet :
testFormulaire = testFormulaire(Forms!Silhouette_ss - Form.Form!Finitions_ss - Form)
Le prob c que mon formulaire s'apl Silhouette_ss-form avec un petit "f" et Access me mets un grand F d'où le problème et si je change le nom de mon formulaire ca me boussille mon formulaire au nivo des requetes donc mission impossible ...
:(
Julaie. -
ModérateurEn clair, ta ligne "cas1", n'a pas la syntaxe correcte pour référencer un sous-formulaire.
pour un sous-formulaire : forms!nom_form.form!nom_de_sous_form
pour un formulaire : forms!nom_form
Il faut donc appeler différemment un sous-formulaire, i.e rajouter .form!.... si tu veux faire passer le nom dans une fonction récursive.
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
-
Je n ai pas compris ce que tu dis qu il faut concaténer
Merci,
Julie. -
ModérateurPour moi, le problème est qu'un formulaire ne s'appelle pas avec la même syntaxe qu'un sous-formulaire, donc en récursif, il faudrait rajouter le début du nom (ou le concaténer avant l'appel)...
A+ Blux"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
- 1
- 2