Aller au contenu

[Résolu] - [Excel] Gestion formule avec année en cours !


mathieu

Messages recommandés

Bonjour les experts et les expertes !

 

Je tiens, depuis quelques année, un tableur excel de suivis de commerce et études.

Le but de se tableur, après un export de donnée depuis notre ERP, est de donner en temps réel nos statistique de commerce de l'année (affaire et C.A. gagnées, en cours, relancé, par domaine, par responsable etc....)

Pour se faire j'ai mis en place diverses formules sur différentes feuilles, le soucis qui se pose, dans mes formules j'ai une donnée de date que je dois changer manuellement d'année en année (et ce sur pas mal de cellules différentes.

 

La formule est comme cela par exemple :

=SOMME.SI.ENS(Liste!$I$3:$I$1998;Liste!$B$3:$B$1998;"GBT";Liste!$D$3:$D$1998;"8 - affaires gagnées";Liste!$M$3:$M$1998;">=01/01/2022";Liste!$M$3:$M$1998;"<=31/12/2022")

J'ai mis en gras le pointage vers des dates pour nos stats, mais ces dates sont entrées manuellement, comment faire pour que d'en année en années cette formule soit toujours actualisé ?

Je vous remercie !

Modifié par mathieu
Passage du sujet en "[Résolu]"
Lien vers le commentaire
Partager sur d’autres sites

Coucou,

Je peux te proposer ceci :

="01/01/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))
et
="31/12/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))

pour remplacer les dates, car les "01/01/" et "31/12/" sont des valeurs fixent, seules les années courantes sont à connaître. De plus tu peux également regarder les années précédentes si besoin en ajoutant - 1 (ou autre entier) à la fin 😜

Pour infos :

AUJOURDHUI() renvoie la date du jour au format de date
JOURS(date_fin;date_début) calcule le nombre de jours entre les deux dates.
ANNEE(num_série) renvoie l'année, un entier entre 1900 et 9999 (Microsoft Excel enregistre les dates sous la forme de numéros séquentiels afin qu’elles puissent être utilisées dans des calculs. Par défaut, le 1er janvier 1900 correspond au numéro séquentiel 1, et le 1er janvier 2008 correspond au numéro séquentiel 39448 car 39 448 jours se sont écoulés depuis le 1er janvier 1900.)

Je te conseille fortement d'écrire ces 2 formules dans 2 cellules différentes nommées afin de pouvoir les réutiliser facilement et rapidement partout dans ton fichier. Un Rechercher&Remplacer devrait permettre de remplacer des dates écrites en dur dans toutes tes formules par le nom de tes cellules très rapidement.

Bisous,
Luna

Modifié par Luna
correction faute de frappe
Lien vers le commentaire
Partager sur d’autres sites

il y a 6 minutes, Luna a dit :

Coucou,

Je peux te proposer ceci :

="01/01/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))
et
="31/12/"&ANNE(JOURS(AUJOURDHUI();01/01/1900))

pour remplacer les dates, car les "01/01/" et "31/12/" sont des valeurs fixent, seules les années courantes sont à connaître. De plus tu peux également regarder les années précédentes si besoin en ajoutant - 1 (ou autre entier) à la fin 😜

Pour infos :

AUJOURDHUI() renvoie la date du jour au format de date
JOURS(date_fin;date_début) calcule le nombre de jours entre les deux dates.
ANNEE(num_série) renvoie l'année, un entier entre 1900 et 9999 (Microsoft Excel enregistre les dates sous la forme de numéros séquentiels afin qu’elles puissent être utilisées dans des calculs. Par défaut, le 1er janvier 1900 correspond au numéro séquentiel 1, et le 1er janvier 2008 correspond au numéro séquentiel 39448 car 39 448 jours se sont écoulés depuis le 1er janvier 1900.)

Je te conseille fortement d'écrire ces 2 formules dans 2 cellules différentes nommées afin de pouvoir les réutiliser facilement et rapidement partout dans ton fichier. Un Rechercher&Remplacer devrait permettre de remplacer des dates écrites en dur dans toutes tes formules par le nom de tes cellules très rapidement.

Bisous,
Luna

Je viens de tester comme cela :

=SOMME.SI.ENS(Liste!$I$3:$I$1998;Liste!$B$3:$B$1998;"GBT";Liste!$D$3:$D$1998;"8 - affaires gagnées";Liste!$M$3:$M$1998;">=01/01/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))";Liste!$M$3:$M$1998;"<=31/12/"&ANNE(JOURS(AUJOURDHUI();01/01/1900))")

ça ne fonctionne pas, ais-je loupé quelques chose ou mal inscrit la formule ?

Lien vers le commentaire
Partager sur d’autres sites

Je dirais que le guillemet (en rouge) est en trop :

=SOMME.SI.ENS(Liste!$I$3:$I$1998;Liste!$B$3:$B$1998;"GBT";Liste!$D$3:$D$1998;"8 - affaires gagnées";Liste!$M$3:$M$1998;">=01/01/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))";Liste!$M$3:$M$1998;"<=31/12/"&ANNEE(JOURS(AUJOURDHUI();01/01/1900))")

Bisous,
Luna

Modifié par Luna
correction faute de frappe
  • Like 1
Lien vers le commentaire
Partager sur d’autres sites

à l’instant, Curlygoth a dit :

Si tu as besoin d'automatiser quelque chose de plus complexe (7 fonctions max dans les formules) je suis dispo

Merci bien pour la proposition, là c'est ok ça fonctionne. Si je dois implémenter d'autres fonction je reviendrai vers toi du coup 🙂

Lien vers le commentaire
Partager sur d’autres sites

Je réitère cependant mon conseil, au cas où il soit passé inaperçu :

il y a 50 minutes, Luna a dit :

Je te conseille fortement d'écrire ces 2 formules dans 2 cellules différentes nommées afin de pouvoir les réutiliser facilement et rapidement partout dans ton fichier. Un Rechercher&Remplacer devrait permettre de remplacer des dates écrites en dur dans toutes tes formules par le nom de tes cellules très rapidement.

Cela t'évitera de devoir modifier chaque cellule une par une si au final elles utilisent toutes la même donnée : la date du "01/01/####" et du "31/12/####" !
C'est le même principe qu'en programmation, lorsqu'une donnée est répétée à plusieurs reprise, on la stocke sous une variable nommée pour y faire appel à chaque fois, sans devoir refaire le même calcul à chaque fois. C'est un gain de temps et on minimise les risques d'erreurs car plus le nombre de répétition est important et plus le risque est élevé de faire une faute de frappe quelque part (ou bien si tu dois re-modifier la formule, de ne pas oublier un occurrence).

Bisous,
Luna

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité