Bonjour,
Petite nouvelle par ici, j'ai besoin d'un gros coup de main !!!
un petit exemple de mon tableau:
[/b]
Ici, je souhaite chercher le nombre de référence prévu sur un mois particulier par année qui commence par S ou T
Exemple => Trouver le nombre de référence (commençant par T et B) prévue sur le mois de Juin 2023.
Et ensuite trouver le nombre d'écart de traitement inférieur à 3 pour chaque mois.
J'ai tenté des tonnes de formules mais il y a toujours un critère qui me bloque dans ma formule à cause de ma syntaxe je pense.
Est-ce que quelqu'un pourrait m'aider ?
Merci d'avance
Calcul suivant critères mois et année
- ChristopherH
- Invétéré
- Messages : 35
- Inscription : 13 janv. 2023 14:35
- Remercié : 3 fois
Re: Calcul suivant critères mois et année
Hello Nadège,
Bienvenue sur le forum !
J'espère que tu vas bien.
Ta situation est assez spécifique mais en revanche réalisable de plusieurs manières.
Je te propose une solution utilisant la formule QUERY. Il en existe aussi d'autres.
J'ai reproduit un tableau similaire au tiens et réalisé la formulaire suivante pour compter le nombre de références commençant par S ou T par mois :
=QUERY(A:C;"SELECT MONTH(A)+1,COUNT(C) WHERE A IS NOT NULL AND C MATCHES '^[ST].*' GROUP BY MONTH(A) LABEL MONTH(A)+1 'Mois', COUNT(C) 'Nombre de refs'")
"Récupère moi les colonnes A à C du tableur. Affiche moi le mois de la colonne A (+1 pour une question de format) ainsi que le nombre de lignes de références de la colonne C, le tout regroupé par mois. Ignore les valeurs nulles et ne compte que lorsque la colonne C commence par un S ou un T. Enfin, renomme les colonnes "Mois" et "Nombre de refs".
Si je souhaite cette fois compter le nombre de fois ou l'écart est inférieur à 3 pour chaque mois, cela donne ça :
=QUERY(A:C;"SELECT MONTH(A)+1,COUNT(B) WHERE A IS NOT NULL AND B < 3 GROUP BY MONTH(A) LABEL MONTH(A)+1 'Mois', COUNT(B) 'Nombre ecart < 3'")
J'ai choisi la formule QUERY pour afficher le résultat pour chaque mois plutôt que pour un seul mois. Si jamais tu souhaites monter en compétences sur QUERY, tu peux consulter :
Bon week-end à toi !
Christopher
Bienvenue sur le forum !
J'espère que tu vas bien.
Ta situation est assez spécifique mais en revanche réalisable de plusieurs manières.
Je te propose une solution utilisant la formule QUERY. Il en existe aussi d'autres.
J'ai reproduit un tableau similaire au tiens et réalisé la formulaire suivante pour compter le nombre de références commençant par S ou T par mois :
=QUERY(A:C;"SELECT MONTH(A)+1,COUNT(C) WHERE A IS NOT NULL AND C MATCHES '^[ST].*' GROUP BY MONTH(A) LABEL MONTH(A)+1 'Mois', COUNT(C) 'Nombre de refs'")
"Récupère moi les colonnes A à C du tableur. Affiche moi le mois de la colonne A (+1 pour une question de format) ainsi que le nombre de lignes de références de la colonne C, le tout regroupé par mois. Ignore les valeurs nulles et ne compte que lorsque la colonne C commence par un S ou un T. Enfin, renomme les colonnes "Mois" et "Nombre de refs".
Si je souhaite cette fois compter le nombre de fois ou l'écart est inférieur à 3 pour chaque mois, cela donne ça :
=QUERY(A:C;"SELECT MONTH(A)+1,COUNT(B) WHERE A IS NOT NULL AND B < 3 GROUP BY MONTH(A) LABEL MONTH(A)+1 'Mois', COUNT(B) 'Nombre ecart < 3'")
J'ai choisi la formule QUERY pour afficher le résultat pour chaque mois plutôt que pour un seul mois. Si jamais tu souhaites monter en compétences sur QUERY, tu peux consulter :
- Numeriblog (je pense que tu connais) : il y a notamment une rubrique "Cours" avec une explication de QUERY (pas aussi poussée) ;
- Le guide QUERY avec des dizaines d'exercices explicatifs sur la fonction (rédigé par Thierry Vanoffe, fondateur de Numericoach)
Bon week-end à toi !
Christopher
- Patrick_Té
- Messages : 18
- Inscription : 15 janv. 2023 10:47
- Remercié : 4 fois
Re: Calcul suivant critères mois et année
Bonjour,
Très bonne solution Christopher
On peut également résoudre ce problème avec un Tableau Croisé Dynamique qui a l'avantage de séparer les mois et années si on a plusieurs années différentes dans le tableau :
On place l'expression régulière en filtre : =regexmatch('Référence';"^["&N1&"].*") ici j'ai rendu dynamique l'expression en plaçant "ST" dans la cellule N1
et pour la deuxième question : on ajoute un filtre avec formule personnalisée : ='écart'<N2 (là encore rendu dynamique en plaçant 3 dans la cellule N2)
Pour le nombre de références on peut utiliser COUNTA ou COUNTUNIQUE si une référence peut apparaître plusieurs fois.
Très bonne solution Christopher
On peut également résoudre ce problème avec un Tableau Croisé Dynamique qui a l'avantage de séparer les mois et années si on a plusieurs années différentes dans le tableau :
On place l'expression régulière en filtre : =regexmatch('Référence';"^["&N1&"].*") ici j'ai rendu dynamique l'expression en plaçant "ST" dans la cellule N1
et pour la deuxième question : on ajoute un filtre avec formule personnalisée : ='écart'<N2 (là encore rendu dynamique en plaçant 3 dans la cellule N2)
Pour le nombre de références on peut utiliser COUNTA ou COUNTUNIQUE si une référence peut apparaître plusieurs fois.
- Pièces jointes
-
- Screenshot 2023-06-24 09.13.24.png (19.09 Kio) Consulté 9019 fois
- ChristopherH
- Invétéré
- Messages : 35
- Inscription : 13 janv. 2023 14:35
- Remercié : 3 fois
Re: Calcul suivant critères mois et année
Excellent Patrick la regex dans le TCD merci !
Tu as l'embarras du choix
Tu as l'embarras du choix
Re: Calcul suivant critères mois et année
Bonjour,
merci pour vos réponses c'est top mais je ne maitrise absolument pas Query donc pas simple à mettre en place quand on ne connait pas le langage !!
Par contre dans les 2 formules de ChristopherH je ne vois pas le critère de l'année 2023, comment peut-on l'intégrer ?
Sinon j'ai oublié quelques paramètres dans ma demande...
Le tableau que je dois remplir existe déjà, peut-on se servir de Query comme d'une fonction basique pour remplir chaque case ou non ?
Y'a t'il une alternative si ce n'est pas possible ?
Ou peut-on simplement faire une mise en forme comme voulu avec Query ?
Et autre info, mon tableau de données est sur une autre feuille sheet que le tableau à remplir.
J'ai essayé de mettre le nom de la feuille sheet dans la formule Query mais à priori ce n'est pas aussi simple car ça ne marche pas ^^
Une syntaxe particulière pour mettre le nom de la feuille et les colonnes concernées ??
Merci en tous cas pour vos réponses, je pense ne plus être très loin de me dépatouiller de ce problème
merci pour vos réponses c'est top mais je ne maitrise absolument pas Query donc pas simple à mettre en place quand on ne connait pas le langage !!
Par contre dans les 2 formules de ChristopherH je ne vois pas le critère de l'année 2023, comment peut-on l'intégrer ?
Sinon j'ai oublié quelques paramètres dans ma demande...
Le tableau que je dois remplir existe déjà, peut-on se servir de Query comme d'une fonction basique pour remplir chaque case ou non ?
Y'a t'il une alternative si ce n'est pas possible ?
Ou peut-on simplement faire une mise en forme comme voulu avec Query ?
Et autre info, mon tableau de données est sur une autre feuille sheet que le tableau à remplir.
J'ai essayé de mettre le nom de la feuille sheet dans la formule Query mais à priori ce n'est pas aussi simple car ça ne marche pas ^^
Une syntaxe particulière pour mettre le nom de la feuille et les colonnes concernées ??
Merci en tous cas pour vos réponses, je pense ne plus être très loin de me dépatouiller de ce problème
Rejoignez la discussion 💬
Vous devez être enregistré pour participer à la discussion et échanger avec les différents membres
Inscrivez-vous dès aujourd'hui
Vous n'êtes pas encore membre ? Rejoignez-nous gratuitement dès aujourd'hui et contribuer en postant votre réponse ou question sur tous les forums disponibles
Inscription