Changer le recordsource d'un sous_form d'un état en vba [Résolu]

tbbuim1
Messages postés
940
Date d'inscription
jeudi 20 février 2003
Dernière intervention
3 février 2011
- 16 janv. 2004 à 09:39 - Dernière réponse : tbbuim1
Messages postés
940
Date d'inscription
jeudi 20 février 2003
Dernière intervention
3 février 2011
- 9 avril 2004 à 10:07
Bonjour à tous,
J'espère que quelqu'un sur cette terre peut m'aider
Je suis désespéré et dégouté d'Access :(

J'essaye de changer par VBA le recordsource d'un sous_formulaire dans un état et je n'y arrive pas.
Pourtant, quand je veux changer le recordsource dans sous_formulaire dans un formulaire ça marche très bien.
Pour y parvenir, j'écris:

Me.ss_form.Form.RecordSource = rq_source

Et ça marche très bien. Je suis obligé de passer par le VBA car je veux changer la table en fonciton des évènements et je ne peux pas faire cela sur une requête en dur.
Mais lorsque j'écris cela dans un état, apparait alors:
erreur d'exécution 2455:
la référence d'une expression à la propriété Form/Report n'est pas valide.

J'ai essayé de l'écrire de toute beaucoup de façon mais le même message revient toujours :'(
J'ai essayé:
Lorsque j'éris ça, la complétion se fait bien et je n'ai qu'à choisir mais j'ai toujours l'erreur à la fin!
Me.ss_form.Form.Recordsource = rq_source
[REPORTS]![Bordereau]![ss_form].Form!RecordSource = rq_source

J'ai essayé de transformer le ss_form en ss_état mais ça me dit la même chose, en mettant Report à la place de Form.
Et rq_source est un string contenant soit la requête en elle même, soit le nom du requête de la base.
Aidez-moi svp, merci

TBBUIM
Afficher la suite 

2 réponses

Meilleure réponse
Alain440
Messages postés
4
Date d'inscription
jeudi 8 janvier 2004
Dernière intervention
16 janvier 2004
- 16 janv. 2004 à 17:12
3
Merci
Tu peux baser le recordsource sur une requête dont tu modifierais la propriété SQL (de l'objet Querydef ) en fonction de tes besoins

Tu peux aussi modifiers le recordsource en ouvrant le formulaire ou l'état en mode Design

OpenReport "MonEtat",acViewDesign

Modifier la propriété RecordSource
Recordsource = chaineSQL

'Fermer et enregistrer l'état

acSaveYes pour valider l'enregistrement de l'état
DoCmd.Close acReport, "MonEtat", acSaveYes

Alain

Merci Alain440 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

tbbuim1
Messages postés
940
Date d'inscription
jeudi 20 février 2003
Dernière intervention
3 février 2011
- 9 avril 2004 à 10:07
0
Merci
Ouais effectivement la meilleure façon de faire est d'ouvrir l'état en mode création. Car autrement c'est impossible!
TBBUIM

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.