Calcul dans un calendrier un peu spécial...

Patrick_Francis

XLDnaute Nouveau
Salut à tous !

N'ayez pas peur de la longueur du texte, c'est en fait pas si terrible, et je suis sur que pour bon nombre d'entres vous, c'est 3 secondes et demies a resoudre ;)

J'ai besoin de faire un calcul un peu particulier dans un calendrier un peu spécial et je n'y arrive pas...

En fait, j'ai mis dans la colonne A les dates du 1er janvier 2009 au 31 décembre 2009.

Ensuite, dans la colonne B, j'ai fait apparaître le nom du jour a coté de chaque date.

Dans la colonne C, pour chaque samedi et chaque dimanche, j'ai écrit le mot "Ferié". En plus, j'ai écrit également ce mot pour chaque jour férié officiel en suisse... (ca en fait 8 de plus quoi, rien de terrible...!)

Voilà, la situation est posée.

Ce que je voudrais faire maintenant, c'est prendre n'importe laquelle de ces dates (colonne A), et y ajouter 12 jours (si si, précisément 12 jours - c'est pour le boulot), mais je voudrais que ces 12 jours soient calculés selon les dates de la colonne A, mais que quand il trouve le mot "Férié" à côté, qu'il ne le compte pas dans ses 12 jours.

Exemple : je pars du 7 janvier, qui est un mercredi. Le lendemain, jeudi, ca fait 1 jour. Le lendemain, le vendredi, ca fait 2 jours. Puis vient le samedi et le dimanche, mais comme il est écrit "Férié" à coté, il ne les compte pas. Ce qui fait que le 3ème jour calculé sera le lundi qui suit, et si ce lundi est un jour férié, et que par conséquent il est aussi noté "Férié" a coté, alors la le 3ème jour calculé sera le mardi 13 janvier. Et ainsi de suite, jusqu'a ce que l'on obtienne 12 jours effectif de travail, sans week-end et sans jour fériés..

MAIS J'Y ARRIVE PAS, GRRRR, ON Y A PASSE UN TEMPS PAS POSSIBLE ! :confused:

Merci 1'000'000 fois d'avance si on peut m'aider...!
 

Pièces jointes

  • calendar.xls
    30 KB · Affichages: 135
  • calendar.xls
    30 KB · Affichages: 138
  • calendar.xls
    30 KB · Affichages: 139
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Calcul dans un calendrier un peu spécial...

Salut Patrick Francis,

Tu trouveras ci-joint ton fichier modifié avec quelques formules

Je n'utilise pas ta "Sheet1" pour les calculs

A+
 

Pièces jointes

  • PFrancis_Calendar.xls
    85.5 KB · Affichages: 110

pierrejean

XLDnaute Barbatruc
Re : Calcul dans un calendrier un peu spécial...

bonjour Patrick

un essai par fonction personnalisée
 

Pièces jointes

  • P_Francis_calendar.zip
    10.3 KB · Affichages: 39
  • P_Francis_calendar.zip
    10.3 KB · Affichages: 44
  • P_Francis_calendar.zip
    10.3 KB · Affichages: 40

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

Merci beaucoup BrunoM45 et Pierrejean, je me disais bien qu'avec certains d'entre vous ça irait super vite...

C'est la classe, autant l'un fichier que l'autrer, mais par contre, j'ai fais des tests, et des fois il y a des jours de décalage.

Exemple avec le fichier de BrunoM45, en partant du 7 janvier + 12 jours, on arrive au 23 janvier, et ton calcul nous amène au 22 seulement. Et comme je dois avouer que je ne comprends pas bien ta formule :( je ne sais pas comment m'y prendre pour modifier.

Même chose avec l'exemple du fichier de Pierrejean, en partant du 9 janvier + 12 jours, on arrive au 27 janvier, et ton calcul nous amène au 26 seulement. Et la encore, c'est encore plus compliqué car je ne sais pas comment tu as fais, du tout...

J'espère que vous me suivez... Et si vous arrivez à faire le tout, ca sera GRANDIOSE !

Merci encore mille fois.
Pat.
 

pierrejean

XLDnaute Barbatruc
Re : Calcul dans un calendrier un peu spécial...

Re

Tout depend du moment ou l'on commence a compter
la version precedente comptait 1 jour a partir du jour de depart
celle-ci compte a partir du jour suivant
Verifie bien (suis pas doué pour les tests)
La fonction personnalisée se trouve dans le module1 accessible par Alt F11
et elle s'utilise comme toute autre fonction
 

Pièces jointes

  • P_Francis_calendar.zip
    10.3 KB · Affichages: 33
  • P_Francis_calendar.zip
    10.3 KB · Affichages: 35
  • P_Francis_calendar.zip
    10.3 KB · Affichages: 33
C

Compte Supprimé 979

Guest
Re : Calcul dans un calendrier un peu spécial...

Re,

Dans ma formule il suffit d'ajouter 1,
Code:
=B1+12+(12-NB.JOURS.OUVRES(B1;B1+12;Params!B$2:B$16))+1

Ma formule calcul le nombre de jours ouvrés entre la date de départ et la date + 12 grace à la liste des jours fériés dans la feuille "Params"
Code:
NB.JOURS.OUVRES(B1;B1+12;Params!B$2:B$16)

Ensuite je calcul combien de jour il me manque pour aller jusqu'à 12,
car dans l'écart il y a les week-end et jour fériés
Code:
(12-NB.JOURS.OUVRES(B1;B1+12;Params!B$2:B$16))

Ce qui me donne le nombre de jours à ajouter pour arriver à la date voulue
=B1+12+(MonCalcul)

Auquel il faut ajouter 1 si date de départ non comptabilisée
=B1+12+(MonCalcul)+1

c'est l'éternel problème des intervals, doit on prendre ou non la date de départ dans le calcul :)

Voilà, A+
 

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

OK Merci a tous les deux donc je vais faire des essais ce soir et regarder si tout fonctionne bien ;)

mais j'ai fais un rapide check la et ca m'a l'air tres tres bien, donc je vous redonne des niouses quand j'aurai fais les tests ce soir...

Merci encore !
Pat :rolleyes:
 

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

Finalement apres avoir regardé nous allons garder la façon de faire de Pierrejean, même si les deux sont très bien, nous avons plus de facilité à intégrer dans notre fichier les calculs de Pierrejean.

Par contre j'ai une question du coup pour toi (Pierrejean), c'est super comme ça marche pour les 12 jours, mais j'ai besoin aussi de faire la même chose avec 21 jours, un autre avec 7 jours et un autre avec 9 (c'est toujours pour nos indicateurs qualité, au boulot)... est-ce qu'il suffit de faire Alt+F11, de rajouter un "module", et de changer la formule ? mais le problème est la... Je change quoi ? quelle donnée ? je sais qu'au lieu de 12 j'ai besoin de 21, de 7, de 9, etc., mais je change quoi au juste ?

Merci ca serait drôlement sympa de m'aider encore sur ce point. Ca va tellement vite avec les gens qui connaissent...

Merci,
A plus,
Pat.
 

pierrejean

XLDnaute Barbatruc
Re : Calcul dans un calendrier un peu spécial...

Re

Merci pour ce choix !!
Voila la même fonction avec , en parametre , le nombre de jours a ajouter
 

Pièces jointes

  • P_Francis_calendar.zip
    10.8 KB · Affichages: 43
  • P_Francis_calendar.zip
    10.8 KB · Affichages: 44
  • P_Francis_calendar.zip
    10.8 KB · Affichages: 43

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

Re,

Alors là... Je dois avouer que ça dépasse mes espérances...! Ca ne pouvait pas être mieux, c'est encore mieux que dans mes pensées !! Merci, vraiment...

Mais une dernière chose (promis, après, j'arrête ;))

Admettons que ma date de départ est le 15.01.09. Je dois recevoir mes certificats dans les 9 jours ouvrables, donc au plus tard le 28.01.09, selon la feuille excel.

Ces certificats, admettons que je les reçoive le 26.01.09, donc 2 jours avant. Alors si je veux savoir en combien de temps je les ai recus, comment est-ce que je peux calculer ? Car ok, du 15.01.09 au 26.01.09, il y a 11 jours, mais il y a 2 week-ends entre deux... Du coup, ce n'est pas 11 jours, mais 7 jours...

Comment puis-je, à partir de ce même fichier excel, calculer cette date ? as-tu une idée ?

Merci 1000x encore et désolé de poser toutes ces questions...:eek:

Patrick.
 

pierrejean

XLDnaute Barbatruc
Re : Calcul dans un calendrier un peu spécial...

Re

Vois en L1 une fonction delai qui tient compte de ton calendrier des feriés
 

Pièces jointes

  • P_Francis_calendar.zip
    12.7 KB · Affichages: 31
  • P_Francis_calendar.zip
    12.7 KB · Affichages: 34
  • P_Francis_calendar.zip
    12.7 KB · Affichages: 34

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

Salut Pierrejean,

Alors voilà j'ai beau ressayer et encore ressayer, je n'arrive pas à faire fonctionner cette fonction "delai"...

J'ai bien ouvert le Visual Basic Editor, j'ai été dans Module 1, j'ai remplacé ton ancien script par le nouveau, exactement comme dans ton exemple, j'ai bien mis mes colonnes "expedie", "recu" et "delai", mais quelles que soient les dates que je tape, ca me retourne "#VALEUR" sans cesse. Et crois-moi, des essais, j'en ai fais !

Hélas je ne peux pas uploader ma feuille sur le forum, pour des raisons évidentes de confidentialités. Je sais bien que ça serait pourtant plus facile à comprendre.

Est-ce que tu as une idée de la raison pour laquelle ça retourne toujours "#VALEUR", ou bien qu'est-ce que je peux contrôler qui pourrait me mettre sur la piste ?

Merci d'avance !
P.
 

Patrick_Francis

XLDnaute Nouveau
Re : Calcul dans un calendrier un peu spécial...

voila en fait comme j'avais fais un onglet juste pour ca ben j'ai fais une copie de mon fichier et j'ai viré tous les autres onglets. et je n'ai gardé que celui ou il y a le calcul qui ne se fait pas.

toute facon les essais que j'ai fais ou j'avais "#VALEUR", ce n'était que dans cet onglet j'avais pas encore essayé de les implémenter dans les autres.

Merci d'avance ! :)
 

Pièces jointes

  • Book2.zip
    22.9 KB · Affichages: 30
  • Book2.zip
    22.9 KB · Affichages: 35
  • Book2.zip
    22.9 KB · Affichages: 31

pierrejean

XLDnaute Barbatruc
Re : Calcul dans un calendrier un peu spécial...

Re

Excuse moi ,je n'avais pas envisagé qu'il y ait plus d'un an en colonne A
Voici le fichier modifié mais ...
la macro devient un peu lente
Je ragarde pour voir s'il est possible d'accelerer
 

Pièces jointes

  • Book2.zip
    23.6 KB · Affichages: 70
  • Book2.zip
    23.6 KB · Affichages: 58
  • Book2.zip
    23.6 KB · Affichages: 58

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 247
Messages
2 086 591
Membres
103 248
dernier inscrit
Happycat