Bonjour,
Comment filtrer un sous formulaire donc les enregistrements afficher dépendent du formulaire principale ?
Avec le code suivant, je filtre tous les formulaires mais pas le ss form chargé
DoCmd.RunCommand acCmdFilterByForm
D'avance merci
Bonjour,
Comment filtrer un sous formulaire donc les enregistrements afficher dépendent du formulaire principale ?
Avec le code suivant, je filtre tous les formulaires mais pas le ss form chargé
DoCmd.RunCommand acCmdFilterByForm
D'avance merci
Bonjour,
Normalement si les propriétés Champs père et champs fils sont correctement renseigné le filtre sur le form principal met a jour ceux du (ou des ) sous-form.
Cordialement,
oui les champs père et fils sont correctement renseignés et le filtrage du form principale ne me pose pas de soucis pour les sous form, je cherche à faire un filtrage de "second niveau" en ne filtrant que les enregistrement affiché par mon sous form sans agir sur mon form principal ...
Dans la théorie je suppose que je dois ciblé mon sous form at lui appliqué la cmd "filtrer" mais dans la pratique
Dans ce cas utilise les propriétés Filter et FilterOn du sous-form.
F1 lorsque tu est sur la propriété te donnera toutes les indications necessaires.
Cordialement,
Mon code est standard, seulement il me flitre les champs de mon form principal et de mon sous form
seulement la cmd filterbyform ne doit s'appliquer qu'a mon sous form
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub Commande179_Click() Me![Contrats sous-formulaire].SetFocus DoCmd.RunCommand acCmdFilterByForm End Sub
Ci-joint le cas de l'application d'un filtre par VBA.
Cet appel est fait depuis le formulaire. Le focus reste sur celui-ci. On fait appel aux propriétés Filter et FilterOn du sous-form.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 if ... ' le filtre est mis Me.monsousform.form.Filter = "Table.Champ = " & mavaleur Me.monsousform.form.FilterOn = True Else ' le filtre est enlevé Me.monsousform.form.Filter = "" Me.monsousform.form.FilterOn = False Endif
ok, le filtre fonctionne, merci loufab mais il n'est pas adapté à mon besoin, je veux faire un filtrage par liste déroulante ... il faut que j'arrive à reproduire la commande filterbyform uniquement dans mon sous form (qui est sur un CTRL onglet) ... je vais voir, peu être en inscrivant les résultats du sous form dans un "tampon" puis faire mon filtrage par une modifiable dans ce tampon ...
On va y arrivé ...
mavaleur peut être remplacer par me.malistederoulante par exemple.
A mon avis il n'y a pas de contre indication sur l'utilisation de cette propriété, juste la bonne syntaxe à trouver suivant le cas.
ok ça fonctionne avec le code
Merci à tous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim stdocname As String Dim stlinkcriteria As String stdocname = "Contrats sous-formulaire" DoCmd.OpenForm stdocname, , , "[N° de client] = '" & Me![N° de client] & "'"
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager