Query count si X + date ne renvoi aucun résultat

Bonjour,

Pourquoi donc un :

=query('Base'!$D$2:$F;"select count(F) where D like '25/09/2023' and NOT F like 'Pas de réponse' label count(F)''")

Renvoi la réponse 'Aucun résultat' ?

Est-ce parce que l'un des paramètre est une date ?

Pourquoi tu as 2 ' avant Base ?

juste une erreur lors de l'adaptation de la formule pour le forum ^^ désolé.

Peut-être la date en effet, query est presque parfait, si j'ai un reproche à émettre ce serait la gestion des dates est fastidieuse, essayer de changer ça :

WHERE DATEVALUE(D) = DATE '2023-09-25'

Sinon, quand je me retrouve dans ta situation, je trouve d'où vient l'erreur par élimination, en ne mettant dans un 1er temps aucune condition, puis une, puis 2, etc. afin d'identifier d'où provient l'erreur.

Bonjour Pierre,

Si je passe mes dates en format texte, la formule complète fonctionne.

Le problème c'est que cela nous oblige à entrer la date en entier ...

j'ai tenté

=query('Base'!D2:D;"select count(D) WHERE DATEVALUE("25/09/2023") label count(D)''")

mais il me dit qu'il y a une erreur dans la formule.

J'ai tenté aussi la vôtre mais idem.

Il te manque le test après le where...

= , like, contains, matches...

Bon, j'ai fait le test chez moi, voici ce qui fonctionne :

=QUERY('Base'!D2:D; "SELECT COUNT(D) WHERE D = DATE '2023-09-25' LABEL COUNT(D) ''")

En repartant de ta formule initiale :

=QUERY('Base'$D$2:$F; "SELECT COUNT(F) WHERE D = DATE '2023-09-25' and NOT F like 'Pas de réponse' LABEL COUNT(F) ''")

J'obtient 0 chez moi :(.

=SIERREUR(query('Base'!$AB$2:$AB;"select count(AB) where AB >= DATE '2023-09-26' and not AB like 'Non envoyé' label count(AB)''");"0")

alors que j'ai des dates qui correspondent :

image

Pourquoi tu ne mets pas simplement :

=SIERREUR(query('Base'!$AB$2:$AB;"select count(AB) where AB >= DATE '2023-09-26' or not AB like 'Non envoyé' label count(AB)''");"0")

Pour les dates j'utilise souvent cette formulation

select B where A > DATE '"&TEXTE(AUJOURDHUI()-F19;"yyyy-MM-dd")&"'

Si je fais un simple

=SIERREUR(query('Base'!$B$2:$AB;"select count(AB) where AB >= DATE '2023-02-10' label count(AB)''");"0")

j'ai 0...

Mets un fichier en partage et je regarde ça, stp... 👍

J'ai pu corriger un prenant le morceau

>= DATE '2023-09-26'

de ta formule, le mien renvoi 0 et je trouve pas pourquoi^^

Bon au final çà fonctionne (sauf quand la colonne des dates n'est pas en mode 'Date' et est restée en mode Texte Brut^^)

Par contre, cela ne fonctionne pas si on veut mettre :

<= DATE '"&A12&"'

car la date est au format non US je pense (même si je force avec format personnalisé, cela ne fonctionne pas), on est donc obligé de mettre la date autant fois qu'il y a de query/select dans la formule, soit de mon coté, beaucoup... loool

Même si tu utilise TEXTE pour reformater ?

<= DATE '"&TEXTE(A12;"yyyy-mm-dd")&"'

Pierre,

j'ai tenté sur ta proposition :

Date souhaitée en A1 au format Texte

Date réelle dans la feuille Base 1 en D au format Texte

Formule :

=SIERREUR(query(Base1!$A$2:$D;"select count(A) where D <= DATE '"&TEXTE(A1;"yyyy-mm-dd")&"' label count(A)''");"0")

Fichier de démo

Salut Seb,

C'est normal. Il faut mettre ta colonne D au format DATE au lieu de TEXTE BRUT.

Et, le résultat attendu est 1, non 2. (Tu demandes combien de dates de la colonne D sont inférieures égales au '04/10/2023').

Bon week-end,

Fil.

Bonjour Fil, ok pas le choix du mode date :(.

çà fait planter un autre doc qui s'occupe d'envoyer les mails automatiquement. Sans que je ne comprenne pourquoi.

D'accord, si tu dois garder le format TEXTE BRUT, alors :

=query(Base1!$A$2:$D;"select count(A) where D <= '"&A1&"' label count(A)''")

Non çà ne fonctionne pas.

Si je met en texte brut avec cette formule

=query(Base1 dates mode texte!$A$2:$D;"select count(A) where D <= '"&A1&"' label count(A)''")

j'obtiens un compte de 4 au lieu de 8, je pense qu'il compte les 3 références comprises entre 01/10/2023 et 04/10/2023 (04/10/2023 étant ma date de référence max), mais ne compte pas les dates de septembre

Si je met en texte brut avec cette formule :

=query('Base2 dates mode texte'!$A$2:$D;"select count(A) where D <= '"&TEXTE(A1;"yyyy-mm-dd")&"' label count(A)''")

là étrangement il en trouve 10 au lieu de 8..., c'est presque plus étrange^^.

Rechercher des sujets similaires à "query count date renvoi aucun resultat"