OVH Cloud OVH Cloud

Problème de chaîne de formulaire

2 réponses
Avatar
Stephane
Appel =E0 tous,=20

J'ai un programme qui comporte plusieurs sections=20
ind=E9pendante. Et certaines section sont elles m=EAme=20
form=E9es de diff=E9rentes section ind=E9pendante. Donc menu=20
principal qui appelle un menu secondaire qui appelle un=20
formulaire auquel se greffe un sous-formulaire. Voici un=20
bout de code ... j'expliquerai mon probl=E8me apr=E8s ...=20

Private Sub cboMateriaux_AfterUpdate()=20
'D=E9claration des variables=20
Dim ThisDB As Database
Dim qryRolodex As QueryDef
Dim qryDef As QueryDef
Dim sQryString As String
Dim sDQ As String

'Initialisation des variables=20
Me!txtEchantillon.Value =3D Null
sDQ =3D Chr$(34)
Set ThisDB =3D CurrentDb

'D=E9but=20

sQryString =3D "SELECT [NOECH], [NODOSSIER], [EXT],=20
[RHODMAX], [WOP], [RETENU5mm]" _
& ",[PASSANT80um], [TYPE], [METHODE], [PROVENANCE],=20
[MATERIAU], [DESSAI]" _
& "FROM tblSGRolodex "

If Not IsNull(Me!txtDossier.Value) Then
sQryString =3D sQryString & "WHERE [NODOSSIER]=3D" &=20
txtDossier.Value
If Not IsNull(Me!cboProvenance.Value) Then
sQryString =3D sQryString & " AND [PROVENANCE] LIKE " & sDQ=20
& CStr(cboProvenance) & sDQ
If Not IsNull(Me!cboMateriaux.Value) Then
sQryString =3D sQryString & " AND [MATERIAU] LIKE " & sDQ &=20
CStr(cboMateriaux) & sDQ
End If
Else
sQryString =3D sQryString & " AND [MATERIAU] LIKE " & sDQ &=20
CStr(cboMateriaux) & sDQ
End If
ElseIf Not IsNull(Me!cboProvenance) Then
sQryString =3D sQryString & "WHERE [PROVENANCE] LIKE " &=20
sDQ & CStr(cboProvenance) & sDQ
If Not IsNull(Me!cboMateriaux) Then
sQryString =3D sQryString & " AND [MATERIAU] LIKE " & sDQ &=20
CStr(cboMateriaux) & sDQ
End If
ElseIf Not IsNull(Me!cboMateriaux) Then
sQryString =3D sQryString & "WHERE [MATERIAU] LIKE " & sDQ=20
& CStr(cboMateriaux) & sDQ
Else
sQryString =3D sQryString & "WHERE [PROVENANCE] LIKE " &=20
sDQ & sDQ
End If

sQryString =3D sQryString & " ORDER BY Mid([DESSAI],1,4)=20
DESC , tblSGRolodex.NOECH DESC"

For Each qryDef In ThisDB.QueryDefs
If qryDef.Name =3D "qryRecherche" Then
ThisDB.QueryDefs.Delete "qryRecherche"
End If
Next qryDef

Set qryRolodex =3D ThisDB.CreateQueryDef("qryRecherche",=20
sQryString)
[Forms!frmRechercheDeResultats!
SubfrmRecherche.Form.RecordSource =3D "qryRecherche" ]=20
End Sub=20

Bon voici le probl=E8me, si je travail directement dans la=20
base de donn=E9es et que j'ouvre le=20
formulaire "frmRechercheDeResultats" sans passer par les=20
menus ... ce bout de code marche parfaitement mais d=E8s=20
que je lance le programme entier et que je passe =E0=20
travers le menu principale la ligne :=20
Forms!frmRechercheDeResultats!
SubfrmRecherche.Form.RecordSource =3D "qryRecherche" ne=20
fonctionne plus et je re=E7ois un message d'erreur disant=20
que le formulaire "frmRechercheDeResultats" est=20
introuvable.=20

Est-ce que quelqu'un a une id=E9e comment je pourrait faire=20
fonctionner le tout malgr=E9 le fait que j'ouvre le=20
programme d'un autre formulaire ... possiblement un menu.=20
D'apr=E8s moi le premier nom apparaissant apr=E8s le Form!=20
est le nom du formulaire de d=E9part ... si c'est le cas je=20
n'arrive pas a chainer plus d'un formulaires pour arriver=20
au sous-formulaire "SubfrmRecherche" auquel se rattache=20
une query que j'essaye de rafraichir en fonction de=20
crit=E8re de recherche donn=E9s par l'usager... quelqu'un a=20
une id=E9e?=20

Merci pour votre temps et aide ...=20

St=E9phane Pelletier,=20
Programmeur Analyste,=20

info@queformat.com

2 réponses

Avatar
Daniel Carollo
Bonjour Stephane!

Etes-vous sur que le formulaire est ouvert avant d'essayer de changer ses
proprietes?
S'il ne l'est pas, cela expliquerait qu'il soit introuvable...

Le fait que votre affichage fonctionne veut dire que la requete creee
fonctionne bien, ce qui veut dire que vous auriez pu nous epargner la
lecture de ce code ... ;-)

Bonne continuation.

--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

"Stephane" wrote in message
news:02fa01c39cd4$a4b65b40$
Appel à tous,

J'ai un programme qui comporte plusieurs sections
indépendante. Et certaines section sont elles même
formées de différentes section indépendante. Donc menu
principal qui appelle un menu secondaire qui appelle un
formulaire auquel se greffe un sous-formulaire. Voici un
bout de code ... j'expliquerai mon problème après ...

8< Tout plein de code efface >8

Bon voici le problème, si je travail directement dans la
base de données et que j'ouvre le
formulaire "frmRechercheDeResultats" sans passer par les
menus ... ce bout de code marche parfaitement mais dès
que je lance le programme entier et que je passe à
travers le menu principale la ligne :
Forms!frmRechercheDeResultats!
SubfrmRecherche.Form.RecordSource = "qryRecherche" ne
fonctionne plus et je reçois un message d'erreur disant
que le formulaire "frmRechercheDeResultats" est
introuvable.

Est-ce que quelqu'un a une idée comment je pourrait faire
fonctionner le tout malgré le fait que j'ouvre le
programme d'un autre formulaire ... possiblement un menu.
D'après moi le premier nom apparaissant après le Form!
est le nom du formulaire de départ ... si c'est le cas je
n'arrive pas a chainer plus d'un formulaires pour arriver
au sous-formulaire "SubfrmRecherche" auquel se rattache
une query que j'essaye de rafraichir en fonction de
critère de recherche donnés par l'usager... quelqu'un a
une idée?

Merci pour votre temps et aide ...

Stéphane Pelletier,
Programmeur Analyste,


Avatar
Merci,

Petite erreur de ma part ... rendre visible un formulaire
n'égale pas ouvrir un formulaire. J'aurais du y pensé.


-----Message d'origine-----
Bonjour Stephane!

Etes-vous sur que le formulaire est ouvert avant
d'essayer de changer ses

proprietes?
S'il ne l'est pas, cela expliquerait qu'il soit
introuvable...


Le fait que votre affichage fonctionne veut dire que la
requete creee

fonctionne bien, ce qui veut dire que vous auriez pu
nous epargner la

lecture de ce code ... ;-)

Bonne continuation.

--
Daniel :-)

Computing Technologies International - www.computing-
tech.com - We

provide solutions...

"Stephane" wrote
in message

news:02fa01c39cd4$a4b65b40$
Appel à tous,

J'ai un programme qui comporte plusieurs sections
indépendante. Et certaines section sont elles même
formées de différentes section indépendante. Donc menu
principal qui appelle un menu secondaire qui appelle un
formulaire auquel se greffe un sous-formulaire. Voici un
bout de code ... j'expliquerai mon problème après ...

8< Tout plein de code efface >8

Bon voici le problème, si je travail directement dans la
base de données et que j'ouvre le
formulaire "frmRechercheDeResultats" sans passer par les
menus ... ce bout de code marche parfaitement mais dès
que je lance le programme entier et que je passe à
travers le menu principale la ligne :
Forms!frmRechercheDeResultats!
SubfrmRecherche.Form.RecordSource = "qryRecherche" ne
fonctionne plus et je reçois un message d'erreur disant
que le formulaire "frmRechercheDeResultats" est
introuvable.

Est-ce que quelqu'un a une idée comment je pourrait faire
fonctionner le tout malgré le fait que j'ouvre le
programme d'un autre formulaire ... possiblement un menu.
D'après moi le premier nom apparaissant après le Form!
est le nom du formulaire de départ ... si c'est le cas je
n'arrive pas a chainer plus d'un formulaires pour arriver
au sous-formulaire "SubfrmRecherche" auquel se rattache
une query que j'essaye de rafraichir en fonction de
critère de recherche donnés par l'usager... quelqu'un a
une idée?

Merci pour votre temps et aide ...

Stéphane Pelletier,
Programmeur Analyste,





.