Déjà dans ta requete, sur la colonne date (sur laquelle tu as mis les critères), il ne faut pas choisir "regroupement" mais "où" en opération.
Et penses à mettre les controles du formulaire dans les paramètres.
A+
Edit : renommes aussi ton champ "date" en autre chose, c'est même étonnant qu'Access t'ait laissé mettre ce nom de champ vu que c'est un mot réservé
Salut
Un exemple vaut mieux que des lignes d'échanges
Un extrait de la mythique NorthWind avec un filtre en vba sur des form (subform ou continuous) et des fonctions Somme.Si()
A adapter avec votre IHM
bonjour,
l'erreur ne correspond pas au code que l'on voit sur l'impression d'écran post #24, cela ressemble plutôt au code donné par hyperion13 (post #9):OK C'est corrigé. ca marche mais, le filtre vba erreur
mais ce code contient une erreur de syntaxe: il y a un espace en trop avant et après le caractère #, délimiteur de dates. Où se trouve se code dans ton application ?
Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part =SomDom("QUANTITE";"NOMDELATABLE";"[DATE] BETWEEN # " & Forms!F_TPRINCIPALE!txtdatedeb & " # AND # " & Forms!F_TPRINCIPALE!txtdatefin & " # AND [PRODUIT] = '" & Forms!F_TPRINCIPALE!cboproduit.Column(1) & "' AND [NOM ET PRENOM] = "MARC"")
correction du code
D'autre part, si tu filtres les dates dans la requête (post # 21), il est inconcevable de le filtrer de nouveau par VBA (post #24)
Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part =SomDom("QUANTITE";"NOMDELATABLE";"[DATE] BETWEEN #" & Forms!F_TPRINCIPALE!txtdatedeb & "# AND #" & Forms!F_TPRINCIPALE!txtdatefin & "# AND [PRODUIT] = '" & Forms!F_TPRINCIPALE!cboproduit.Column(1) & "' AND [NOM ET PRENOM] = "MARC"")
En adaptant l'exemple de Un extrait de la mythique NorthWind sur une ztexte de mon formulaire :frm_cmde1;txtqteA =Somme(VraiFaux([idsoc]=1;[qte];0)). (Erreur).
Le code semble être conforme, à l'exception peut-être de la prise en compte éventuelle de valeurs nulles:
mais est-il bien le code adapté à ton propre cas ? j'ai l'impression que [idsoc] et [qte] viennent tout droit de la base exemple postée par hyperion13.
Code : Sélectionner tout - Visualiser dans une fenêtre à part =Somme(VraiFaux([idsoc]=1;Nz([qte];0);0))
Effectivement c'est de la bdd exemple postée par hyperion 13.d'ailleur approprié a juste titre au sujet ,seulement pourquoi elle ne fonctionne pas sur mon formulaire ?
Rappel:
Bdd contient 1 Table et 1 formulaire.c'est tout.
A+.
comment peut-on le savoir si tu ne nous montres rien de ce que tu as fait ?pourquoi elle ne fonctionne pas sur mon formulaire ?
Bonjour,
Voici la BDD si vous le voulez bien.
somme si.rar
ou
et
et
A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 Private Sub FILTRE_click() 'filtre remis à zéro f = "" 'PRODUIT.................................................................................................................. If Not IsNull(Me.RPRODUIT) And Me.RPRODUIT <> "" Then If f <> "" Then f = f & " AND PRODUIT = """ & Me.RPRODUIT & """" Else f = "PRODUIT= """ & Me.RPRODUIT & """" End If End If 'DATE.................................................................................................................. If Not IsNull(Me.datedebut) And Me.datedebut <> "" And Not IsNull(Me.datefin) And Me.datefin <> "" Then If f <> "" Then f = f & " AND clng(date) BETWEEN " & CLng(Me.datedebut) & " AND " & CLng(Me.datefin) & "" Else f = "clng(date) BETWEEN " & CLng(Me.datedebut) & " AND " & CLng(Me.datefin) & "" End If End If Me.Filter = f Me.FilterOn = True End Sub 'remise a zero filtre vente sur double click entete Private Sub EntêteFormulaire_DblClick(Cancel As Integer) FilterOn = False RNOM = clearcontents 'IsNull ROPERATION RPRODUIT = clearcontents 'IsNull RFOURNISSEUR datedebut = clearcontents 'IsNull [RPERIODE CONSOMMATION] datefin = clearcontents 'IsNull [RLIEU CONSOMMATION] rquantite = clearcontents
Re,
Le problème vient du mot réservé NOM (Name) que vous utilisez comme nom de champ dans la tbl et le form
Il faut impérativement que j’établisse la liste des noms réservés.
Effectivement c’était ça le problème et je vous remercie pour.
Effectivement la liste des mots réservée est longue . Je fait avec le conseil de grand tee bois.
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