|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Bonjour tout le monde
je travaille sur ce probleme depuis quelques jours et je ne trouve pas je vais essaye d’être le plus clair possible: on a en a1 une date de début ( ex: 12 janvier 2011) en a2 la date de fin ( ex: 10 mars 2012) Ces dates peuvent être soient dans la même année civile, soient a cheval sur deux années A partir de ces dates, je veux avoir en a3 l’année 2011 puis en a4 le premier mois donc janvier( pas besoin des jours), puis en b4 février, c4 mars etc.... jusqu’à ,dans ce cas décembre 2011, ensuite un vide puis redémarrer avec janvier 2012 jusqu’à mars 2012. Le problème aussi est que si date début et date de fin sont dans la même année civile(surtout en essayant avec des formules!!!!!!), donc a priori je dirais que ce serait mieux avec une macro mais je n'arrive pas a gerer les dates en macro Au besoin je peux joindre un petit tableau, mais j'ai lu dans les règles qu'on devait d'abord essaye d'expliquer son problème Donc j'espere que quelqu'un pourra m'aider |
|
|
00
|
|
|
#2 |
![]() ![]() |
pas besoin du fichier excel mais juste directement dans le forum un exemple des dates que tu souhaite obtenir pour les deux cas que tu as détecté ...
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Merci bbil de t'interesser a mon probleme,
d'emblee desole si je ne reponds pas toujours de suite car perso j'habite au Canada ( Ontario Nord/Ouest) donc avec le decalage horaire, je suis un peu en retard par rapport a l'Europe (-6HRES) on prend la date de debut : 17 Aout 2011 Date de fin : 16 Octobre 2012 donc sur une ligne de cellule ( ex ligne 4) je veux afficher les mois ( en lettre et non en chiffre) qui vont de Aout a Decembre ( dans ce cas), marquer un espace(une cellule vide), reprendre a Janvier pour arreter en Octobre et si possible en ligne 3 au-dessus de Aout l'annee ( 2011) et au-dessus de Janvier l'annee 2012 J'y suis arrive + ou- avec une formule mais sur 12 cellules de suite et donc mon probleme est que si la date de debut est en aout comme ci-dessus la formule ne sera valable que sur 4 cellules ( de aout a decembre) et ensuite faut mettre une autre formule en place car on change d'annee, ou autre probleme, si date de debut et date de fin sont dans la meme annee civile ( 2011 pour les deux dates) J'espere que ces renseignements vont t'aider a mieux cerner mon probleme Merci a toi |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Bonjour tout le monde,
Finalement je mets un petit fichier en ligne pour mieux me faire comprendre et vous montrer ou j'en suis avec mes recherches Sur la feuille j'ai commence en ligne 11 avec des formules, mais je n'arrive pas a continuer (explications sur la feuille), donc j'ai fait une petite macro qui marche, mais pareil je bloque sur la suite ( explications idem) Alors si quelqu'un a un peu de temps pour me depanner, merci en avance |
|
|
00
|
|
|
#5 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
Bonjour,
Peut etre que cette méthode répond à ton problème en H11 Code :
=DATE(ANNEE($I$4);MOIS($I$4);JOUR($I$4)) (si MOIS.DECALER ne fonctionne pas, installer la macro complémentaire outils d'analyse) Pour afficher uniquement le nom du mois, utiliser le format personnalisé mmmm
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Merci JFontaine,
mais cela ne marche pas car si, avec la formule, la date de fin arrive, la formule continue de travailler et on depasse la date. Par contre j'ai trouve la solution et je remets mon exemple en attache pour ceux que cela interresse, mais cela ne fonctionne que par la macro pour les mois en chiffres ( en ligne12) et par formule pour les mois en lettres en ligne 13, alors si quelqu'un peut completer la macro pour l'affichage en ligne 13 via macro, cela m'aiderait Pour des essais changer les dates en I4 et I5 et activer la macro par le bouton |
|
|
00
|
|
|
#7 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
si tu veux arreter l'incrémentation, ajoute un test
en H11 Code :
=SI(MOIS.DECALER(H11;1)<$I$5;MOIS.DECALER(H11;1);"") en I10 et glisser sur la droite Code :
=SI(ESTERREUR(ANNEE(I11));"";SI(ANNEE(I11)<>ANNEE(H11);ANNEE(I11);""))
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Re,Jfontaine,
Ok pour rajouter la condition, mais tu as a appliquer cette formule sur un minimum de 12 cellules concernant l'annee n ( ici 2011, car 12 mois dans l'annee) et ensuite tu passes a l'annee n+1, or si ta date de debut comence en juin 2011, la formule n'a d'utilite que sur 6 cellules et ensuite tu te retrouves avec 6 cellules de vide avent de passer a l'annee n+1, probleme resolu sur mon exemple par la macro; si tu peux trouver une formule, mais qui passe a l'annee n+1 des que annee n est terminee, je suis preneur Merci |
|
|
00
|
|
|
#9 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
La formule ci dessous redemarre à l'année suivante si date de fin atteinte
en I10 Code :
=SI(MOIS.DECALER(H11;1)<$I$5;MOIS.DECALER(H11;1);SI(H11>$I$5;MOIS.DECALER(H11;1);DATE(ANNEE(H11)+1;1;1)))
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Merci JFontaine pour cette nouvelle formule
![]() Petit probleme: si date debut =17 aout 2011 et date de fin 29 Mars 2012 * la formule retient le 17 de date de depart une fois passee a 2012 * elle ne s'arrete pas une fois passe la date de Mars 2012 ( apres le 17/03/2012 elle passe au 1/1/2013 puis 2/1/2013 puis 3/1/2013 etc... ![]() Alors si tu peux regler ce petit detail Merci |
|
|
00
|
|
|
#11 | ||
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
Il me semblait qu'après la date de fin, il fallait repartir sur une nouvelle année
Citation:
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
||
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Merci Jfontaine,
La formule doit s'arreter a la fin de la date de fin donc mars 2012, par ailleurs si on peut marquer une cellule de vide au passage de l'annee 2011 a 2012 ce serait parfait J'ai egalement remarque qu'en fonction du jour de la date ( debut ou fin) la formule ne tient pas compte du mois : ex: date de fin 3 mars 2012 la formule s'arrete a fevrier 2012 date de fin 29 mars 2012 la formule s'arrete a mars 2012 Peux-tu regarder cela de plus pret S.V.P merci |
|
|
00
|
|
|
#13 | ||
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
Citation:
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
||
|
|
00
|
|
|
#14 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Bonjour JFontaine, merci de toutes ces reponses,
![]() Questions: =SI(MOIS.DECALER(L13,1)<=$I$5,MOIS.DECALER(L13,1),SI(L13>$I$5,MOIS.DECALER(L13,1),DATE(ANNEE(L13)+1,1,1))) Dans la formule que tu m'as donne,quelle est exactement la fonction de fin: DATE(ANNEE(L13)+1,1,1 je ne comprends pas tres bien Aussi peux-t-ton rajouter un si(L13>=$I$5,"",...... avent ou apres la fonction DATE pour arreter la fonction( d'ou ma question pour comprendre la fonction DATE) ![]() Merci |
|
|
00
|
|
|
#15 | ||
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
La fonction DATE reçoit en argument une année, un mois, et un jour et retourne une date. Cela permet la manipulation.
Citation:
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
||
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Re JFontaine,
Je suis en-train d'essayer de comprendre la formule.... si je comprends bien la fontion MOIS.DECALER(K3,1) on prend dans la cellule K3( qui est en format date) le premier chiffre de la date ( qui est le mois) et donc si on mets (K3,2) elle prendra le deuxieme chiffre ( qui est le jour)??? Si cela est juste, comment marche ( dans la suite de la fonction on a) siH11>$I$5 ????? quelle valeur prent-on dans H11 et dans $I$5 car les deux sont en format date??? Merci |
|
|
00
|
|
|
#17 | ||
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
Citation:
Penses a utiliser l'aide
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
||
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
Autant pour moi,
Je viens de regarder sur internet dans la fonction MOIS.DECALER, en fait le chiffre apres la reference de la cellule indique le nombre de mois qu'on veut decaler.... Ma question reste pour le restant de la formule??? |
|
|
00
|
|
|
#19 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 904 ![]() |
H11>$I$5 compare les 2 cellules qui doivent être toutes les deux de type Date
Si H11 est supérieur à I5 alors on décale H11 d'un mois sinon on part sur une nouvelle année
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#20 |
|
Invité de passage
![]() Maurice MundingerRetraite Inscription : décembre 2010 Messages : 42 ![]() |
RE,
Donc si je comprends bien, on compare la valeur des cellules, on ne tient plus compte que du mois, mais on compare les deux dates.... Donc dans la formule si(MOIS.DECALER(k13,1)<$I$5 on rajoute a la date en K13 1 mois et on regarde si cette nouvelle date est inferieure a la date en I5 ??? Merci |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com