la formule a bien ajouté 4 jours, mais tout en enlevant UN mois
.SI(QuestionnaireEntier=0;JOUR(DateReponse+4))
mktime
en php.
(...) pour les réponses des autres mois (...)
DateReponse
et j'y met la date 30/06/2014
. A coté, je rentre l'équation =DATE(ANNEE(DateReponse);MOIS(DateReponse);JOUR(DateReponse)+4)
, et magie, le résultat est bien 04/07/2014
. J'étais en fin de mois, il est passé au suivant.
pow
en C pour faire des décalages de bits (sur des micros 8 bits). Coup de bol, ça a marché lors des tests. Jusqu'à la fois où le résultat obtenu n'était pas le bon, va trouver l'erreur dans ce cas là...
=IF(AND(I4="En cours",G4<EDATE(TODAY(),-2)),DATEDIF(G4, TODAY(),"y")&" an(s) "&DATEDIF(G4, TODAY(),"ym")&" mois et "&DATEDIF(G4, TODAY(),"md")&" jour(s)",IF(I4="Terminé",IF(G4<EDATE(H4,-2),DATEDIF(G4,H4,"y")&" an(s) "&DATEDIF(G4,H4,"ym")&" mois et "&DATEDIF(G4,H4,"md")&" jour(s)",""),""))
G4
et ma date de fin (si elle existe) est sur H4
.pow (nombreÀDécaler, décalage)
? Ça ne marche pas : 00000011 ^ 00000010 = 00001001.nombreÀDécaler * pow (2, décalage)
. C'est plus logique, mais c'est quand même inutilement compliqué.DATE()
l'assistant ouvre une fenêtre avec 3 champs texte pour choisir année, mois et jour, avec un sélecteur de cellule. Et si dans la case "jour" tu écris DAY(A1)+4
(mon Excel est en anglais) pour avoir le jour + 4 de la valeur dans la cellue A1, l'assistant affiche comme valeur 34. Ca explique que la valeur finale soit bonne, le 34 janvier c'est bien le 3 février.
=IF(COUNTIF(A2:B2,"")<>0,N4+4,"pas nécessaire")
CountIf
est à adapter en fonction du nombre de réponse attendues bien sûr.
=COUNTIF(A2:B2,"")
=COUNTIF([Le range ou tu dois compter],[La condition])
.=IF(COUNTIF(A2:B2,"")<>0,C2+4,"pas nécessaire")
donne donc littéralement:rand()
et c'est curieux quelques fois ça s'approchait du bon resultat mais ça restait souvent pas très fiable, donc ceux qui codent les librairies pourraient faire un peu d'efforts
+4
soit à l'intérieur de la fonction JOUR(). La partie foireuse qui ne traite pas le cas où QuestionnaireEntier≠0 était également manquante dans l'énoncé.SI(QuestionnaireEntier=0;JOUR(DateReponse+4);"")
NB.SI([intervalle],[condition])
=IF(F13="","",IF(F13+1>IF(MOD(Recapitulatif!$C$2,4000)=0,28,IF(AND(MOD(Recapitulatif!$C$2,100)=0,MOD(Recapitulatif!$C$2,400)<>0),28,IF(MOD(Recapitulatif!$C$2,4)<>0,28,29))),"",F13+1))
F13
c'est la cellule du N° de jour de mon DimancheMOIS.DECALER(feuille précédente ; cellule contenant le 1er jour du mois)
et de nouveau les autres cellules de chaque jour en +1 de la précédente.MAJUSCULE(TEXTE(cellule contenant le 1er jour du mois;"mmmm aaaa"))
.
Au risque d'en surprendre plus d'un, la fonction
JOUR
de excel retourne... (musique de suspense et roulements de tambour) ...le jour d'une date. Donc tu lui demande le jour de la chaîne20 février 2014
, il te retournera20
. T'es tout content, t'y ajoute 4, tu convertis en date, et tu as bien le 24. Sauf que le mois et l'année n'étant pas précisés, il te mettra par défaut le24 janvier 1900
.S'il y a un bug, ce n'est pas où tu crois (même si c'est toujours facile d'accuser Microsoft).
edit : si tu veux que ça marche, essaye plutôt
=DATE(ANNEE(DateReponse);MOIS(DateReponse);JOUR(DateReponse)+4)