Calendrier automatique

Phoenix23

XLDnaute Occasionnel
Bonsoir à toutes et tous,
Mon problème: Un calendrier automatique qui calcul le temps passé depuis la date de naissance, j'ai trouvé, modifié une formule trouvée sur internet pour les années, mois, jours passés, mais je bloque pour les heures, minutes secondes.
D'avance merci pour votre aide
Cordialement
 

Fichiers joints

Roland_M

XLDnaute Barbatruc
Re : Calendrier automatique

bonsoir à tous,
salut à toi Modeste !

EDIT:

message supprimé !
j'ai mal vu ! tu as mis ce que je proposé !
 

ROGER2327

XLDnaute Barbatruc
Re : Calendrier automatique

Bonjour à tous.


On obtient des choses bizarres...​


Capture6.JPG

(Je n'ai pas de solution.)


ℝOGER2327
#7118


Lundi 23 Décervelage 141 (Saint Tank, animal - fête Suprême Quarte)
1[SUP]er[/SUP] Pluviôse An CCXXII, 1,6946h - lauréole
2014-W04-1T04:04:02Z
 

Fichiers joints

Phoenix23

XLDnaute Occasionnel
Re : Calendrier automatique

Bonjour,
Pleinement satisfait par la solution présentée.
Pour moi ce sujet est Clos
Merci encore
Cordialement
 

Modeste geedee

XLDnaute Barbatruc

Fichiers joints

Modeste geedee

XLDnaute Barbatruc
Re : Calendrier automatique

Bonsour®
Pour moi ce sujet est Clos
:rolleyes: très improbable, ce sujet est un marronnier d'EXCEL ...

;)
cf : Roger2327
je crois que le problème posé est difficile à résoudre à la satisfaction de tous.
http://www.excel-downloads.com/forum/215498-calcul-entre-deux-dates-ancienne-et-recente.html#post1358079
http://www.excel-downloads.com/forum/attachments/forum-excel/295205d1389785339-calcul-entre-deux-dates-ancienne-et-recente-ecart-entre-deux-dates.xlsm
 

Roland_M

XLDnaute Barbatruc
Re : Calendrier automatique

bien le bonjour à tous,

voir ci-joint avec une routine vba !?
à tester !?

Code:
' essai seulement pour Année/Mois/Jour
' dates de naissances lig 3 à 9 à adapter!

Public Sub CalcEcartDate()
Dim DatEnCours As Date, DatNaissance As Date
DatEnCours = Cells(1, 1)
For Lig = 3 To 9
  DatNaissance = Cells(Lig, 1)
  Annee = Year(DatEnCours - DatNaissance) - 1900
  Mois = Month(DatEnCours - DatNaissance) - 1
  Jour = Day(DatEnCours - DatNaissance)
  If Jour >= 31 Then Mois = Mois + 1: Jour = 0
  If Mois >= 12 Then Annee = Annee + 1: Mois = 0
  Cells(Lig, 2) = Annee
  Cells(Lig, 3) = Mois
  Cells(Lig, 4) = Jour
Next
End Sub
 

Fichiers joints

ROGER2327

XLDnaute Barbatruc
Re : Calendrier automatique

Re...


Persiste et signe.

Encore quelques bricoles dans le fichier joint.
Pas d'utilisation de DATEDIF.
Quatre variantes en Excel pur et une fonction personnalisée avec VisualBasic.
Mais pas sûr que la discussion est close : j'attends l'avalanche de bogues que vous ne manquerez pas de découvrir. À suivre...​



ℝOGER2327
#7119


Lundi 23 Décervelage 141 (Saint Tank, animal - fête Suprême Quarte)
1[SUP]er[/SUP] Pluviôse An CCXXII, 6,8846h - lauréole
2014-W04-1T16:31:23Z
 

Fichiers joints

Phoenix23

XLDnaute Occasionnel
Re : Calendrier automatique

Re
A toutes et tous,
j'ai trouvé mon bonheur ce matin, j'avais laissée un petit mot, afin d'annoncé que pour moi le sujet était clos, alors peut être une erreur de ma part, ce n'est pas ainsi qu'il faut clôturer un sujet ?
Cordialement
 

ROGER2327

XLDnaute Barbatruc
Re : Calendrier automatique

Re...


Re
A toutes et tous,
j'ai trouvé mon bonheur ce matin (...)
Parfait ! Ce qui serait sympathique, c'est que vous nous fassiez profiter de la solution. Merci d'avance !​


(...) j'avais laissée un petit mot, afin d'annoncé que pour moi le sujet était clos, alors peut être une erreur de ma part, ce n'est pas ainsi qu'il faut clôturer un sujet ?
Cordialement
L'usage courant sur ce forum est ne jamais vraiment clore une discussion. Je dois dire que j'aime bien cette coutume : des discussions anciennes (et quelquefois très anciennes) reprennent en apportant parfois des choses fort intéressantes.​


Bonne continuation.


ℝOGER2327
#7120


Lundi 23 Décervelage 141 (Saint Tank, animal - fête Suprême Quarte)
1[SUP]er[/SUP] Pluviôse An CCXXII, 8,7979h - lauréole
2014-W04-1T21:06:54Z
 

Phoenix23

XLDnaute Occasionnel
Re : Calendrier automatique

Bonsoir a toutes et tous,
Comme demandé judicieusement je joins le fichier, sur lequel j'ai pris modèle, mais mes compétences s'arrêtent la. Je ne s'aurais expliquer les formules, mais effectivement si il peut rendre service........
Merci encore à toutes les personnes qui m'ont apportés leur aides.
Je ne sais pas si je suis bien dans le bon forum pour soulever un petit souci qui m'arrive depuis quelques temps avec Excel2010. Voila cette erreur se produit de façon aléatoire, lorsque je clique sur un fichier il s'affiche une formule de ce type : Une erreur s'est produite a l'ouverture du fichier, et une page Excel blanche s'affiche, pour remédier a ce problème il me faut fermer le fichier et le rouvrir afin d'obtenir un affichage normal.
Cordialement
 

Fichiers joints

Modeste geedee

XLDnaute Barbatruc
Re : Calendrier automatique

Bonsour®
il y a longtemps, j'avais fait un classeur du genre. J'aimerais savoir si les données sont exactes.
:cool:
à première vue cela semble correct...

à part l'utilisation de DATEDIF :L'erreur en nombre de jour est inferieure à 1 jour. les dates de naissance comporte l'heure.
L'utilisation du parametre "MD" (objet de Bugs) n'est pas utilisé.

pour le total nombre de jours un formule plus simple : =$C$3-B3

Comme "On" le fait souvent remarquer ici:
Les notions de année, mois ne sont pas assimilables à des unités constantes...
 

Lone-wolf

XLDnaute Barbatruc
Re : Calendrier automatique

Re Modeste,

il faut dire que j'avais fait cela quand j'ai commencé à avoir des notions sur Excel et les formules.
Pour les dates comportants les heures, on peux les supprimer sans autres, ça ne vas rien changer.


A+ :cool:
 

Roland_M

XLDnaute Barbatruc
Re : Calendrier automatique

bonsoir à tous,

je n'ai pas vu de réaction sur ma macro au poste#8 !
j'aurai aimé savoir si c'est ok !?
personnellement il me semblait que oui !? mais...
 

Modeste geedee

XLDnaute Barbatruc
Re : Calendrier automatique

Bonsour®
je n'ai pas vu de réaction sur ma macro au poste#8 !
j'aurai aimé savoir si c'est ok !?
personnellement il me semblait que oui !? mais...
:cool:
personnellement pour moi aussi c'est OK...

:p
quoi que ...
Jour = Day(DatEnCours - DatNaissance)
If Jour >= 31 Then Mois = Mois + 1: Jour = 0
la condition >= est superfétatoire...:rolleyes:
Day ne peut être supérieur à 31
If Jour = 31 doit suffire ...

de même pour Mois
If Mois =12
quand month = 12, mois=month-1

Annee = Year(DatEnCours - DatNaissance) - 1900
Mois = Month(DatEnCours - DatNaissance) - 1
Jour = Day(DatEnCours - DatNaissance)
If Jour = 31 Then Mois = Mois + 1: Jour = 0
If Mois = 12 Then Annee = Annee + 1: Mois = 0
;)

nb : de toute façon, chacun sait ce que Roger et moi-même pensons de ce découpage en "années et mois élastiques"
;)
 

ROGER2327

XLDnaute Barbatruc
Re : Calendrier automatique

Bonjour à tous.


Re...
bonsoir à tous,

je n'ai pas vu de réaction sur ma macro au poste#8 !
j'aurai aimé savoir si c'est ok !?
personnellement il me semblait que oui !? mais...
Un petit comparatif en pièce jointe. Quant à savoir si c'est ok, c'est affaire de goût...

(Pour me faciliter les choses, j'ai déduit une fonction personnalisée de votre procédure :
VB:
Function EcartDate(DatNaissance As Date, DatEnCours As Date)
'D'après une procédure de Roland_M
Dim Annee, Mois, Jour
  Annee = Year(DatEnCours - DatNaissance) - 1900
  Mois = Month(DatEnCours - DatNaissance) - 1
  Jour = Day(DatEnCours - DatNaissance)
  If Jour >= 31 Then Mois = Mois + 1: Jour = 0
  If Mois >= 12 Then Annee = Annee + 1: Mois = 0
  EcartDate = Array(Annee, Mois, Jour) 'Renvoie un vecteur-ligne à trois composantes.
End Function
Sauf erreur de ma part, cette transformation n'induit pas de changement dans le résultat.)


Bonne nuit.


ℝOGER2327
#7122


Mercredi 25 Décervelage 141 (Saint Petiot, expert - fête Suprême Quarte)
3 Pluviôse An CCXXII, 1,4938h - fragon
2014-W04-3T03:35:07Z
 

Fichiers joints

Roland_M

XLDnaute Barbatruc
Re : Calendrier automatique

bonjour,

merci à vous pour la réponse !
effectivement pas évident !?

quoique, ROGER... c'est fort !
 

Discussions similaires


Haut Bas