J'ai cr=E9e un filtre multi-crit=E8re au sein d'un formulaire=20
c'est bien =E7a marche mais d=E9sormais j'aimerai imprimer=20
les r=E9sultats dans un =E9tat.
Je ne veux pas de : capture d'=E9cran, d'impression=20
d'enregistrement ou autre.=20
Voici mon code au sein de mon formulaire :
Option Compare Database
Private Sub chkLotEb_Click()
If Me.chkLotEb Then
Me.cmbLotEb.Visible =3D False
Else
Me.cmbLotEb.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkOutillageEb_Click()
If Me.chkOutillageEb Then
Me.cmbOutillageEb.Visible =3D False
Else
Me.cmbOutillageEb.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkLibell=E9_Click()
If Me.chkLibell=E9 Then
Me.txtLibell=E9.Visible =3D False
Else
Me.txtLibell=E9.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkIndice_Click()
If Me.chkIndice Then
Me.txtIndice.Visible =3D False
Else
Me.txtIndice.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkCircuit_Click()
If Me.chkCircuit Then
Me.cmbCircuit.Visible =3D False
Else
Me.cmbCircuit.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkProc=E9d=E9_Click()
If Me.chkProc=E9d=E9 Then
Me.cmbProc=E9d=E9.Visible =3D False
Else
Me.cmbProc=E9d=E9.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkCr=E9atrice_Click()
If Me.chkCr=E9atrice Then
Me.cmbCr=E9atrice.Visible =3D False
Else
Me.cmbCr=E9atrice.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkEmbt_Click()
If Me.chkEmbt Then
Me.cmbEmbt.Visible =3D False
Else
Me.cmbEmbt.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkMati=E8remoule_Click()
If Me.chkMati=E8remoule Then
Me.cmbMati=E8remoule.Visible =3D False
Else
Me.cmbMati=E8remoule.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkMati=E8refonds_Click()
If Me.chkMati=E8refonds Then
Me.cmbMati=E8refonds.Visible =3D False
Else
Me.cmbMati=E8refonds.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkEtat_Click()
If Me.chkEtat Then
Me.cmbEtat.Visible =3D False
Else
Me.cmbEtat.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkStatut_Click()
If Me.chkStatut Then
Me.cmbStatut.Visible =3D False
Else
Me.cmbStatut.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkStockage_Click()
If Me.chkStockage Then
Me.cmbStockage.Visible =3D False
Else
Me.cmbStockage.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkPotentiel_Click()
If Me.chkPotentiel Then
Me.txtPotentiel.Visible =3D False
Else
Me.txtPotentiel.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkQt=E9moule_Click()
If Me.chkQt=E9moule Then
Me.txtQt=E9moule.Visible =3D False
Else
Me.txtQt=E9moule.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub chkQt=E9fonds_Click()
If Me.chkQt=E9fonds Then
Me.txtQt=E9fonds.Visible =3D False
Else
Me.txtQt=E9fonds.Visible =3D True
End If
RefreshQuery
End Sub
Private Sub cmbLotEb_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbOutillageEb_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtLibell=E9_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtIndice_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbCircuit_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbProc=E9d=E9_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbCr=E9atrice_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbEmbt_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbMati=E8remoule_BeforeUpdate(Cancel As=20
Integer)
RefreshQuery
End Sub
Private Sub cmbMati=E8refonds_BeforeUpdate(Cancel As=20
Integer)
RefreshQuery
End Sub
Private Sub cmbStatut_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbEtat_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbStockage_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtPotentiel_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtQt=E9moule_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtQt=E9fonds_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub Form_Load()
Dim ctl As Control
For Each ctl In Me.Controls
Select Case Left(ctl.Name, 3)
Case "chk"
ctl.Value =3D -1
Case "lbl"
ctl.Caption =3D "-*-*-"
Case "txt"
ctl.Visible =3D False
ctl.Value =3D ""
Case "cmb"
ctl.Visible =3D False
End Select
Next ctl
Me.lstResults.RowSource =3D "SELECT Ebaucheur.[Code SOM=20
Eb],Ebaucheur.[Code article],[Libell=E9 art],Ebaucheur.
[Indice de s=E9rie],Ebaucheur.[Circuit Fab],Ebaucheur.
[Proc=E9d=E9],Ebaucheur.[code qual fonte],Ebaucheur.[Qualit=E9=20
fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qt=E9=20
Moules Eb],Ebaucheur.[Qt=E9 Fonds Eb],Ebaucheur.[Code=20
usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la=20
s=E9rie],Ebaucheur.[Lieu de stockage Eb], Ebaucheur.
[Potentiel d=E9part Eb],Ebaucheur.[Potentiel Eb],Ebaucheur.
[Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur.
[Code article]<>0;"
Me.lstResults.Requery
End Sub
Private Sub RefreshQuery()
Dim SQL As String
SQL =3D "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code=20
article],[Libell=E9 art],Ebaucheur.[Indice de=20
s=E9rie],Ebaucheur.[Circuit Fab],Ebaucheur.
[Proc=E9d=E9],Ebaucheur.[code qual fonte],Ebaucheur.[Qualit=E9=20
fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qt=E9=20
Moules Eb],Ebaucheur.[Qt=E9 Fonds Eb],Ebaucheur.[Code=20
usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la=20
s=E9rie],Ebaucheur.[Lieu de stockage Eb], Ebaucheur.
[Potentiel d=E9part Eb],Ebaucheur.[Potentiel Eb],Ebaucheur.
[Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur.
[Code article]<>0"
If Not Me.chkLotEb Then
SQL =3D SQL & " And [Code SOM Eb]=3D'" & Me.cmbLotEb & "'"
End If
If Not Me.chkOutillageEb Then
SQL =3D SQL & " And [Code article]=3D" & Me.cmbOutillageEb=20
& ""
End If
If Not Me.chkLibell=E9 Then
SQL =3D SQL & " And [Libell=E9 art] like '*" & Me.txtLibell=E9=20
& "'"
End If
If Not Me.chkIndice Then
SQL =3D SQL & " And [Indice de s=E9rie] like '*" &=20
Me.txtIndice & "'"
End If
If Not Me.chkCircuit Then
SQL =3D SQL & " And [Circuit Fab]=3D '" & Me.cmbCircuit & "'"
End If
If Not Me.chkProc=E9d=E9 Then
SQL =3D SQL & " And [Proc=E9d=E9]=3D '" & Me.cmbProc=E9d=E9 & "'"
End If
If Not Me.chkCr=E9atrice Then
SQL =3D SQL & " And [Code usine]=3D '" & Me.cmbCr=E9atrice & "'"
End If
If Not Me.chkEmbt Then
SQL =3D SQL & " And [Emboitement MdB]=3D" & Me.cmbEmbt & ""
End If
If Not Me.chkMati=E8remoule Then
SQL =3D SQL & " And [code qual fonte]=3D '" &=20
Me.cmbMati=E8remoule & "'"
End If
If Not Me.chkMati=E8refonds Then
SQL =3D SQL & " And [Qualit=E9 fds Eb]=3D '" &=20
Me.cmbMati=E8refonds & "'"
End If
If Not Me.chkStatut Then
SQL =3D SQL & " And [Code stat serie]=3D '" & Me.cmbStatut=20
& "'"
End If
If Not Me.chkEtat Then
SQL =3D SQL & " And [Etat de la s=E9rie]=3D '" & Me.cmbEtat=20
& "'"
End If
If Not Me.chkStockage Then
SQL =3D SQL & " And [Lieu de stockage Eb]=3D '" &=20
Me.cmbStockage & "'"
End If
If Not Me.chkPotentiel Then
SQL =3D SQL & " And [Potentiel Eb]=3D" & Me.txtPotentiel & ""
End If
If Not Me.chkQt=E9moule Then
SQL =3D SQL & " And [Qt=E9 Moules Eb]=3D" & Me.txtQt=E9moule & ""
End If
If Not Me.chkQt=E9fonds Then
SQL =3D SQL & " And [Qt=E9 Fonds Eb]=3D" & Me.txtQt=E9fonds & ""
End If
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick
Bonjour,
C'est tout ? Pour être franc, je n'ai rien lu du code... j'ai autre chose à faire. Ceci dit, voici un truc que tu peux faire. J'espère que cela répond à ta demande.
Tu peux gérer une variable qui contiendra la description du filtre multi-critère telle que tu veux l'afficher dans l'état. Dans l'argument d'ouverture de l'état (OpenArg) tu transmets à l'état cette description. Ensuite, dans la procédure qui s'exécute à l'ouverture de l'état, tu lui dit d'afficher cela dans une zone quelconque de l'état.
Cordialement.
-- Patrick
"James" wrote in message news:069201c47ada$7cb655c0$
Bonjour,
J'ai crée un filtre multi-critère au sein d'un formulaire c'est bien ça marche mais désormais j'aimerai imprimer les résultats dans un état.
Je ne veux pas de : capture d'écran, d'impression d'enregistrement ou autre.
Voici mon code au sein de mon formulaire :
Option Compare Database
Private Sub chkLotEb_Click() If Me.chkLotEb Then Me.cmbLotEb.Visible = False Else Me.cmbLotEb.Visible = True End If RefreshQuery End Sub Private Sub chkOutillageEb_Click() If Me.chkOutillageEb Then Me.cmbOutillageEb.Visible = False Else Me.cmbOutillageEb.Visible = True End If RefreshQuery End Sub Private Sub chkLibellé_Click() If Me.chkLibellé Then Me.txtLibellé.Visible = False Else Me.txtLibellé.Visible = True End If RefreshQuery End Sub Private Sub chkIndice_Click() If Me.chkIndice Then Me.txtIndice.Visible = False Else Me.txtIndice.Visible = True End If RefreshQuery End Sub Private Sub chkCircuit_Click() If Me.chkCircuit Then Me.cmbCircuit.Visible = False Else Me.cmbCircuit.Visible = True End If RefreshQuery End Sub Private Sub chkProcédé_Click() If Me.chkProcédé Then Me.cmbProcédé.Visible = False Else Me.cmbProcédé.Visible = True End If RefreshQuery End Sub Private Sub chkCréatrice_Click() If Me.chkCréatrice Then Me.cmbCréatrice.Visible = False Else Me.cmbCréatrice.Visible = True End If RefreshQuery End Sub Private Sub chkEmbt_Click() If Me.chkEmbt Then Me.cmbEmbt.Visible = False Else Me.cmbEmbt.Visible = True End If RefreshQuery End Sub Private Sub chkMatièremoule_Click() If Me.chkMatièremoule Then Me.cmbMatièremoule.Visible = False Else Me.cmbMatièremoule.Visible = True End If RefreshQuery End Sub Private Sub chkMatièrefonds_Click() If Me.chkMatièrefonds Then Me.cmbMatièrefonds.Visible = False Else Me.cmbMatièrefonds.Visible = True End If RefreshQuery End Sub Private Sub chkEtat_Click() If Me.chkEtat Then Me.cmbEtat.Visible = False Else Me.cmbEtat.Visible = True End If RefreshQuery End Sub Private Sub chkStatut_Click() If Me.chkStatut Then Me.cmbStatut.Visible = False Else Me.cmbStatut.Visible = True End If RefreshQuery End Sub Private Sub chkStockage_Click() If Me.chkStockage Then Me.cmbStockage.Visible = False Else Me.cmbStockage.Visible = True End If RefreshQuery End Sub Private Sub chkPotentiel_Click() If Me.chkPotentiel Then Me.txtPotentiel.Visible = False Else Me.txtPotentiel.Visible = True End If RefreshQuery End Sub Private Sub chkQtémoule_Click() If Me.chkQtémoule Then Me.txtQtémoule.Visible = False Else Me.txtQtémoule.Visible = True End If RefreshQuery End Sub Private Sub chkQtéfonds_Click() If Me.chkQtéfonds Then Me.txtQtéfonds.Visible = False Else Me.txtQtéfonds.Visible = True End If RefreshQuery End Sub Private Sub cmbLotEb_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbOutillageEb_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtLibellé_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtIndice_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbCircuit_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbProcédé_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbCréatrice_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbEmbt_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbMatièremoule_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbMatièrefonds_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbStatut_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbEtat_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbStockage_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtPotentiel_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtQtémoule_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtQtéfonds_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub Form_Load() Dim ctl As Control
For Each ctl In Me.Controls Select Case Left(ctl.Name, 3) Case "chk" ctl.Value = -1 Case "lbl" ctl.Caption = "-*-*-" Case "txt" ctl.Visible = False ctl.Value = "" Case "cmb" ctl.Visible = False End Select
Next ctl
Me.lstResults.RowSource = "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code article],[Libellé art],Ebaucheur. [Indice de série],Ebaucheur.[Circuit Fab],Ebaucheur. [Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur. [Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur. [Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur. [Code article]<>0;" Me.lstResults.Requery
End Sub
Private Sub RefreshQuery() Dim SQL As String
SQL = "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code article],[Libellé art],Ebaucheur.[Indice de série],Ebaucheur.[Circuit Fab],Ebaucheur. [Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur. [Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur. [Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur. [Code article]<>0"
If Not Me.chkLotEb Then SQL = SQL & " And [Code SOM Eb]='" & Me.cmbLotEb & "'" End If
If Not Me.chkOutillageEb Then SQL = SQL & " And [Code article]=" & Me.cmbOutillageEb & "" End If
If Not Me.chkLibellé Then SQL = SQL & " And [Libellé art] like '*" & Me.txtLibellé & "'" End If
If Not Me.chkIndice Then SQL = SQL & " And [Indice de série] like '*" & Me.txtIndice & "'" End If
If Not Me.chkCircuit Then SQL = SQL & " And [Circuit Fab]= '" & Me.cmbCircuit & "'" End If
If Not Me.chkProcédé Then SQL = SQL & " And [Procédé]= '" & Me.cmbProcédé & "'" End If
If Not Me.chkCréatrice Then SQL = SQL & " And [Code usine]= '" & Me.cmbCréatrice & "'" End If
If Not Me.chkEmbt Then SQL = SQL & " And [Emboitement MdB]=" & Me.cmbEmbt & "" End If
If Not Me.chkMatièremoule Then SQL = SQL & " And [code qual fonte]= '" & Me.cmbMatièremoule & "'" End If
If Not Me.chkMatièrefonds Then SQL = SQL & " And [Qualité fds Eb]= '" & Me.cmbMatièrefonds & "'" End If
If Not Me.chkStatut Then SQL = SQL & " And [Code stat serie]= '" & Me.cmbStatut & "'" End If
If Not Me.chkEtat Then SQL = SQL & " And [Etat de la série]= '" & Me.cmbEtat & "'" End If
If Not Me.chkStockage Then SQL = SQL & " And [Lieu de stockage Eb]= '" & Me.cmbStockage & "'" End If
If Not Me.chkPotentiel Then SQL = SQL & " And [Potentiel Eb]=" & Me.txtPotentiel & "" End If
If Not Me.chkQtémoule Then SQL = SQL & " And [Qté Moules Eb]=" & Me.txtQtémoule & "" End If
If Not Me.chkQtéfonds Then SQL = SQL & " And [Qté Fonds Eb]=" & Me.txtQtéfonds & "" End If
Qu'est ce que je doit modifier au sein de ce code pour exploiter cela dans un état.
Merci d'avance
Bonjour,
C'est tout ? Pour être franc, je n'ai rien lu du code... j'ai autre chose à
faire. Ceci dit, voici un truc que tu peux faire. J'espère que cela répond à
ta demande.
Tu peux gérer une variable qui contiendra la description du filtre
multi-critère telle que tu veux l'afficher dans l'état. Dans l'argument
d'ouverture de l'état (OpenArg) tu transmets à l'état cette description.
Ensuite, dans la procédure qui s'exécute à l'ouverture de l'état, tu lui dit
d'afficher cela dans une zone quelconque de l'état.
Cordialement.
--
Patrick
"James" <anonymous@discussions.microsoft.com> wrote in message
news:069201c47ada$7cb655c0$a301280a@phx.gbl...
Bonjour,
J'ai crée un filtre multi-critère au sein d'un formulaire
c'est bien ça marche mais désormais j'aimerai imprimer
les résultats dans un état.
Je ne veux pas de : capture d'écran, d'impression
d'enregistrement ou autre.
Voici mon code au sein de mon formulaire :
Option Compare Database
Private Sub chkLotEb_Click()
If Me.chkLotEb Then
Me.cmbLotEb.Visible = False
Else
Me.cmbLotEb.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkOutillageEb_Click()
If Me.chkOutillageEb Then
Me.cmbOutillageEb.Visible = False
Else
Me.cmbOutillageEb.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkLibellé_Click()
If Me.chkLibellé Then
Me.txtLibellé.Visible = False
Else
Me.txtLibellé.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkIndice_Click()
If Me.chkIndice Then
Me.txtIndice.Visible = False
Else
Me.txtIndice.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkCircuit_Click()
If Me.chkCircuit Then
Me.cmbCircuit.Visible = False
Else
Me.cmbCircuit.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkProcédé_Click()
If Me.chkProcédé Then
Me.cmbProcédé.Visible = False
Else
Me.cmbProcédé.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkCréatrice_Click()
If Me.chkCréatrice Then
Me.cmbCréatrice.Visible = False
Else
Me.cmbCréatrice.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkEmbt_Click()
If Me.chkEmbt Then
Me.cmbEmbt.Visible = False
Else
Me.cmbEmbt.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkMatièremoule_Click()
If Me.chkMatièremoule Then
Me.cmbMatièremoule.Visible = False
Else
Me.cmbMatièremoule.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkMatièrefonds_Click()
If Me.chkMatièrefonds Then
Me.cmbMatièrefonds.Visible = False
Else
Me.cmbMatièrefonds.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkEtat_Click()
If Me.chkEtat Then
Me.cmbEtat.Visible = False
Else
Me.cmbEtat.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkStatut_Click()
If Me.chkStatut Then
Me.cmbStatut.Visible = False
Else
Me.cmbStatut.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkStockage_Click()
If Me.chkStockage Then
Me.cmbStockage.Visible = False
Else
Me.cmbStockage.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkPotentiel_Click()
If Me.chkPotentiel Then
Me.txtPotentiel.Visible = False
Else
Me.txtPotentiel.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkQtémoule_Click()
If Me.chkQtémoule Then
Me.txtQtémoule.Visible = False
Else
Me.txtQtémoule.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkQtéfonds_Click()
If Me.chkQtéfonds Then
Me.txtQtéfonds.Visible = False
Else
Me.txtQtéfonds.Visible = True
End If
RefreshQuery
End Sub
Private Sub cmbLotEb_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbOutillageEb_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtLibellé_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtIndice_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbCircuit_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbProcédé_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbCréatrice_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbEmbt_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbMatièremoule_BeforeUpdate(Cancel As
Integer)
RefreshQuery
End Sub
Private Sub cmbMatièrefonds_BeforeUpdate(Cancel As
Integer)
RefreshQuery
End Sub
Private Sub cmbStatut_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbEtat_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbStockage_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtPotentiel_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtQtémoule_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub txtQtéfonds_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub Form_Load()
Dim ctl As Control
For Each ctl In Me.Controls
Select Case Left(ctl.Name, 3)
Case "chk"
ctl.Value = -1
Case "lbl"
ctl.Caption = "-*-*-"
Case "txt"
ctl.Visible = False
ctl.Value = ""
Case "cmb"
ctl.Visible = False
End Select
Next ctl
Me.lstResults.RowSource = "SELECT Ebaucheur.[Code SOM
Eb],Ebaucheur.[Code article],[Libellé art],Ebaucheur.
[Indice de série],Ebaucheur.[Circuit Fab],Ebaucheur.
[Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité
fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté
Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code
usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la
série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur.
[Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur.
[Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur.
[Code article]<>0;"
Me.lstResults.Requery
End Sub
Private Sub RefreshQuery()
Dim SQL As String
SQL = "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code
article],[Libellé art],Ebaucheur.[Indice de
série],Ebaucheur.[Circuit Fab],Ebaucheur.
[Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité
fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté
Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code
usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la
série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur.
[Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur.
[Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur.
[Code article]<>0"
If Not Me.chkLotEb Then
SQL = SQL & " And [Code SOM Eb]='" & Me.cmbLotEb & "'"
End If
If Not Me.chkOutillageEb Then
SQL = SQL & " And [Code article]=" & Me.cmbOutillageEb
& ""
End If
If Not Me.chkLibellé Then
SQL = SQL & " And [Libellé art] like '*" & Me.txtLibellé
& "'"
End If
If Not Me.chkIndice Then
SQL = SQL & " And [Indice de série] like '*" &
Me.txtIndice & "'"
End If
If Not Me.chkCircuit Then
SQL = SQL & " And [Circuit Fab]= '" & Me.cmbCircuit & "'"
End If
If Not Me.chkProcédé Then
SQL = SQL & " And [Procédé]= '" & Me.cmbProcédé & "'"
End If
If Not Me.chkCréatrice Then
SQL = SQL & " And [Code usine]= '" & Me.cmbCréatrice & "'"
End If
If Not Me.chkEmbt Then
SQL = SQL & " And [Emboitement MdB]=" & Me.cmbEmbt & ""
End If
If Not Me.chkMatièremoule Then
SQL = SQL & " And [code qual fonte]= '" &
Me.cmbMatièremoule & "'"
End If
If Not Me.chkMatièrefonds Then
SQL = SQL & " And [Qualité fds Eb]= '" &
Me.cmbMatièrefonds & "'"
End If
If Not Me.chkStatut Then
SQL = SQL & " And [Code stat serie]= '" & Me.cmbStatut
& "'"
End If
If Not Me.chkEtat Then
SQL = SQL & " And [Etat de la série]= '" & Me.cmbEtat
& "'"
End If
If Not Me.chkStockage Then
SQL = SQL & " And [Lieu de stockage Eb]= '" &
Me.cmbStockage & "'"
End If
If Not Me.chkPotentiel Then
SQL = SQL & " And [Potentiel Eb]=" & Me.txtPotentiel & ""
End If
If Not Me.chkQtémoule Then
SQL = SQL & " And [Qté Moules Eb]=" & Me.txtQtémoule & ""
End If
If Not Me.chkQtéfonds Then
SQL = SQL & " And [Qté Fonds Eb]=" & Me.txtQtéfonds & ""
End If
C'est tout ? Pour être franc, je n'ai rien lu du code... j'ai autre chose à faire. Ceci dit, voici un truc que tu peux faire. J'espère que cela répond à ta demande.
Tu peux gérer une variable qui contiendra la description du filtre multi-critère telle que tu veux l'afficher dans l'état. Dans l'argument d'ouverture de l'état (OpenArg) tu transmets à l'état cette description. Ensuite, dans la procédure qui s'exécute à l'ouverture de l'état, tu lui dit d'afficher cela dans une zone quelconque de l'état.
Cordialement.
-- Patrick
"James" wrote in message news:069201c47ada$7cb655c0$
Bonjour,
J'ai crée un filtre multi-critère au sein d'un formulaire c'est bien ça marche mais désormais j'aimerai imprimer les résultats dans un état.
Je ne veux pas de : capture d'écran, d'impression d'enregistrement ou autre.
Voici mon code au sein de mon formulaire :
Option Compare Database
Private Sub chkLotEb_Click() If Me.chkLotEb Then Me.cmbLotEb.Visible = False Else Me.cmbLotEb.Visible = True End If RefreshQuery End Sub Private Sub chkOutillageEb_Click() If Me.chkOutillageEb Then Me.cmbOutillageEb.Visible = False Else Me.cmbOutillageEb.Visible = True End If RefreshQuery End Sub Private Sub chkLibellé_Click() If Me.chkLibellé Then Me.txtLibellé.Visible = False Else Me.txtLibellé.Visible = True End If RefreshQuery End Sub Private Sub chkIndice_Click() If Me.chkIndice Then Me.txtIndice.Visible = False Else Me.txtIndice.Visible = True End If RefreshQuery End Sub Private Sub chkCircuit_Click() If Me.chkCircuit Then Me.cmbCircuit.Visible = False Else Me.cmbCircuit.Visible = True End If RefreshQuery End Sub Private Sub chkProcédé_Click() If Me.chkProcédé Then Me.cmbProcédé.Visible = False Else Me.cmbProcédé.Visible = True End If RefreshQuery End Sub Private Sub chkCréatrice_Click() If Me.chkCréatrice Then Me.cmbCréatrice.Visible = False Else Me.cmbCréatrice.Visible = True End If RefreshQuery End Sub Private Sub chkEmbt_Click() If Me.chkEmbt Then Me.cmbEmbt.Visible = False Else Me.cmbEmbt.Visible = True End If RefreshQuery End Sub Private Sub chkMatièremoule_Click() If Me.chkMatièremoule Then Me.cmbMatièremoule.Visible = False Else Me.cmbMatièremoule.Visible = True End If RefreshQuery End Sub Private Sub chkMatièrefonds_Click() If Me.chkMatièrefonds Then Me.cmbMatièrefonds.Visible = False Else Me.cmbMatièrefonds.Visible = True End If RefreshQuery End Sub Private Sub chkEtat_Click() If Me.chkEtat Then Me.cmbEtat.Visible = False Else Me.cmbEtat.Visible = True End If RefreshQuery End Sub Private Sub chkStatut_Click() If Me.chkStatut Then Me.cmbStatut.Visible = False Else Me.cmbStatut.Visible = True End If RefreshQuery End Sub Private Sub chkStockage_Click() If Me.chkStockage Then Me.cmbStockage.Visible = False Else Me.cmbStockage.Visible = True End If RefreshQuery End Sub Private Sub chkPotentiel_Click() If Me.chkPotentiel Then Me.txtPotentiel.Visible = False Else Me.txtPotentiel.Visible = True End If RefreshQuery End Sub Private Sub chkQtémoule_Click() If Me.chkQtémoule Then Me.txtQtémoule.Visible = False Else Me.txtQtémoule.Visible = True End If RefreshQuery End Sub Private Sub chkQtéfonds_Click() If Me.chkQtéfonds Then Me.txtQtéfonds.Visible = False Else Me.txtQtéfonds.Visible = True End If RefreshQuery End Sub Private Sub cmbLotEb_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbOutillageEb_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtLibellé_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtIndice_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbCircuit_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbProcédé_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbCréatrice_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbEmbt_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbMatièremoule_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbMatièrefonds_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbStatut_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbEtat_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub cmbStockage_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtPotentiel_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtQtémoule_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub txtQtéfonds_BeforeUpdate(Cancel As Integer) RefreshQuery End Sub Private Sub Form_Load() Dim ctl As Control
For Each ctl In Me.Controls Select Case Left(ctl.Name, 3) Case "chk" ctl.Value = -1 Case "lbl" ctl.Caption = "-*-*-" Case "txt" ctl.Visible = False ctl.Value = "" Case "cmb" ctl.Visible = False End Select
Next ctl
Me.lstResults.RowSource = "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code article],[Libellé art],Ebaucheur. [Indice de série],Ebaucheur.[Circuit Fab],Ebaucheur. [Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur. [Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur. [Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur. [Code article]<>0;" Me.lstResults.Requery
End Sub
Private Sub RefreshQuery() Dim SQL As String
SQL = "SELECT Ebaucheur.[Code SOM Eb],Ebaucheur.[Code article],[Libellé art],Ebaucheur.[Indice de série],Ebaucheur.[Circuit Fab],Ebaucheur. [Procédé],Ebaucheur.[code qual fonte],Ebaucheur.[Qualité fds Eb], Ebaucheur.[Emboitement MdB],Ebaucheur.[Qté Moules Eb],Ebaucheur.[Qté Fonds Eb],Ebaucheur.[Code usine], Ebaucheur.[Code stat serie],Ebaucheur.[Etat de la série],Ebaucheur.[Lieu de stockage Eb], Ebaucheur. [Potentiel départ Eb],Ebaucheur.[Potentiel Eb],Ebaucheur. [Cumul Cps battus Eb] FROM [Filtre Eb]Where Ebaucheur. [Code article]<>0"
If Not Me.chkLotEb Then SQL = SQL & " And [Code SOM Eb]='" & Me.cmbLotEb & "'" End If
If Not Me.chkOutillageEb Then SQL = SQL & " And [Code article]=" & Me.cmbOutillageEb & "" End If
If Not Me.chkLibellé Then SQL = SQL & " And [Libellé art] like '*" & Me.txtLibellé & "'" End If
If Not Me.chkIndice Then SQL = SQL & " And [Indice de série] like '*" & Me.txtIndice & "'" End If
If Not Me.chkCircuit Then SQL = SQL & " And [Circuit Fab]= '" & Me.cmbCircuit & "'" End If
If Not Me.chkProcédé Then SQL = SQL & " And [Procédé]= '" & Me.cmbProcédé & "'" End If
If Not Me.chkCréatrice Then SQL = SQL & " And [Code usine]= '" & Me.cmbCréatrice & "'" End If
If Not Me.chkEmbt Then SQL = SQL & " And [Emboitement MdB]=" & Me.cmbEmbt & "" End If
If Not Me.chkMatièremoule Then SQL = SQL & " And [code qual fonte]= '" & Me.cmbMatièremoule & "'" End If
If Not Me.chkMatièrefonds Then SQL = SQL & " And [Qualité fds Eb]= '" & Me.cmbMatièrefonds & "'" End If
If Not Me.chkStatut Then SQL = SQL & " And [Code stat serie]= '" & Me.cmbStatut & "'" End If
If Not Me.chkEtat Then SQL = SQL & " And [Etat de la série]= '" & Me.cmbEtat & "'" End If
If Not Me.chkStockage Then SQL = SQL & " And [Lieu de stockage Eb]= '" & Me.cmbStockage & "'" End If
If Not Me.chkPotentiel Then SQL = SQL & " And [Potentiel Eb]=" & Me.txtPotentiel & "" End If
If Not Me.chkQtémoule Then SQL = SQL & " And [Qté Moules Eb]=" & Me.txtQtémoule & "" End If
If Not Me.chkQtéfonds Then SQL = SQL & " And [Qté Fonds Eb]=" & Me.txtQtéfonds & "" End If