tristaz
XLDnaute Nouveau
Bonjour,
Pour la petite présentation, je suis employé en ingénieur qualité dans l'armement (étatique). Les données de mes demandes seront donc modifiées mais le fond restera le même.
J'ai pour mes travaux, des délais à calculer. Pour se faire j'utilise actuellement la bonne calculette de MS. Cependant, dans une démarche d'amélioration de mon travail, je cherche à automatiser cette étape pour gagner du temps et éviter des erreurs.
Je ne suis pas un génie du VBA, mais ma formation est encore relativement fraiche donc je peux me débrouiller (je pense).
Venons-en à mon sujet :
Un délai est ici calculé à partir d'un T0 qui est égal à "la date de signature de notre fournisseur + 2 jours".
- Si notre T0 calculé est dans le mois d'aout, alors il sera automatiquement égal au 01/09.
- Si notre T0 calculé est dans la période du 10 au 31 décembre, alors il sera automatiquement égal au 01/01/ (année de T0+1)
Maintenant, la partie la plus sportive :
À partir de notre T0 calculé précédemment, nous allons ajouter notre délai de x mois (pour simplifier mon monologue, nous utiliserons le terme DX0) :
- Si DX0 passe par le mois d’août, alors nous ajouterons +31 jours.
- Si DX0 est dans le mois d’août, alors nous ajouterons +31 jours.
- Si DX0 passe par le 10 au 31 décembre, nous ajouterons +21 jours.
- Si DX0 est entre le 10 au 31 décembre, alors nous ajouterons +21 jours.
- Si DX0 est dans la période COVID [01/03/2020 ; 31/07/2020], alors nous ajouterons 140 jours.
Comme vous pouvez le comprendre, un délai peut et c’est là tout le plaisir, passer par plusieurs conditions de neutralisations et donc se retrouver nettement décalé.
Il est aussi important de prendre en compte qu’un délai final calculer pourra encore et encore être décalé s’il « atterrit » dans une période neutralisée.
La dernière complexité réside sur le jour du T0 ou du DX0 final, si c’est un samedi ou dimanche, on le décalera au lundi suivant.
Auriez-vous des idées sur le comment écrire mon petit VBA qui me permettra d’entrer mon T0 en MsgBox et d’en sortir une date directement dans une fenêtre en « pop-up » ?
Je n’ai hélas pas jusqu’à présent trouvé de macro faite que je pourrais adapter, si vous possédez ce graal je suis preneur.
Je ne cherche pas de version finalisée, je veux tout de même comprendre au maximum ce que je présenterez à mes collègues
Pour la petite présentation, je suis employé en ingénieur qualité dans l'armement (étatique). Les données de mes demandes seront donc modifiées mais le fond restera le même.
J'ai pour mes travaux, des délais à calculer. Pour se faire j'utilise actuellement la bonne calculette de MS. Cependant, dans une démarche d'amélioration de mon travail, je cherche à automatiser cette étape pour gagner du temps et éviter des erreurs.
Je ne suis pas un génie du VBA, mais ma formation est encore relativement fraiche donc je peux me débrouiller (je pense).
Venons-en à mon sujet :
Un délai est ici calculé à partir d'un T0 qui est égal à "la date de signature de notre fournisseur + 2 jours".
- Si notre T0 calculé est dans le mois d'aout, alors il sera automatiquement égal au 01/09.
- Si notre T0 calculé est dans la période du 10 au 31 décembre, alors il sera automatiquement égal au 01/01/ (année de T0+1)
Maintenant, la partie la plus sportive :
À partir de notre T0 calculé précédemment, nous allons ajouter notre délai de x mois (pour simplifier mon monologue, nous utiliserons le terme DX0) :
- Si DX0 passe par le mois d’août, alors nous ajouterons +31 jours.
- Si DX0 est dans le mois d’août, alors nous ajouterons +31 jours.
- Si DX0 passe par le 10 au 31 décembre, nous ajouterons +21 jours.
- Si DX0 est entre le 10 au 31 décembre, alors nous ajouterons +21 jours.
- Si DX0 est dans la période COVID [01/03/2020 ; 31/07/2020], alors nous ajouterons 140 jours.
Comme vous pouvez le comprendre, un délai peut et c’est là tout le plaisir, passer par plusieurs conditions de neutralisations et donc se retrouver nettement décalé.
Il est aussi important de prendre en compte qu’un délai final calculer pourra encore et encore être décalé s’il « atterrit » dans une période neutralisée.
La dernière complexité réside sur le jour du T0 ou du DX0 final, si c’est un samedi ou dimanche, on le décalera au lundi suivant.
Auriez-vous des idées sur le comment écrire mon petit VBA qui me permettra d’entrer mon T0 en MsgBox et d’en sortir une date directement dans une fenêtre en « pop-up » ?
Je n’ai hélas pas jusqu’à présent trouvé de macro faite que je pourrais adapter, si vous possédez ce graal je suis preneur.
Je ne cherche pas de version finalisée, je veux tout de même comprendre au maximum ce que je présenterez à mes collègues