dehayef
Messages postés3Date d'inscriptionlundi 26 août 2002StatutMembreDernière intervention 1 décembre 2005
-
26 mars 2003 à 13:23
AlieNPoWereD
Messages postés3Date d'inscriptionjeudi 27 octobre 2005StatutMembreDernière intervention17 septembre 2008
-
27 oct. 2005 à 16:16
Bonjour,
j'ai besoind 'avoir l'age de qqn à partir de sa date de naissance. J'utilise la fonction DateDiff entre la datede naissance et la date du jour. Malheureusement la réponse est toujours arrondie. (ex.: 22.75 --> 23).
Comment puis-je avoir une réponse qui n'arrondi pas à l'unité supérieure?
Merci
dehayef
Messages postés3Date d'inscriptionlundi 26 août 2002StatutMembreDernière intervention 1 décembre 2005 26 mars 2003 à 15:18
De cette manière j'obtiens par exemple 22.75 . Mais je voudrais obtenir 22. Le problème est qu'il passe à 23 si je le mets en integer.
et en utilisant le fonction formatnumber(var,0), il arrondit aussi.
cs_pen
Messages postés5Date d'inscriptionjeudi 20 mars 2003StatutMembreDernière intervention10 avril 2003 3 avril 2003 à 15:45
:) j ai un probleme presque comme le votre si vous vouler m'aider ,j ai besoin de calculer l'age de quelqu'un a partir de sa date naissance qui est saisi dans une base de donner access est que je dois calculer sur l'interface vb
COMMENT FAIRE SVP
MERCI :sad) :kisses)
Vous n’avez pas trouvé la réponse que vous recherchez ?
lolo1683
Messages postés20Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention24 février 2005 4 avril 2003 à 11:59
Hello, je n'avais pas vu ton mesage sur le forum...
Comme t'a dis je-ne-sais-plus-qui, il faudrait que tu verifies tes formats de date :
Le format renvoyé par acces doit etre le meme que celui de ton poste (parametres regionaux)
S'il ne sont pas identiques tu dois t'aranger pour les mettre au meme format avant de faire le datediff() (hesite pas à demander si tu vois pas comment faire.)
@+
Loïc
mbouhamdi
Messages postés1Date d'inscriptionsamedi 26 février 2005StatutMembreDernière intervention18 mai 2005 18 mai 2005 à 23:33
Salut tous le monde
Est ce que quelqu'un peut me donner le nom du composant du calendrier pour VB car je dois saisir une date pour l'enregistrer dans une base de données.
Merci d'avance
AlieNPoWereD
Messages postés3Date d'inscriptionjeudi 27 octobre 2005StatutMembreDernière intervention17 septembre 2008 27 oct. 2005 à 03:30
Salut tlm rép a trouver la date de naissance a partir de la date de naissance...
Jai pas trouver la date mais ici j'évalu si une personne à partir de sa date de naissance a 18 ans ou plus
c pt pas optimiser au max mais comme programeur vous etes capable de rendre moins explicite :)
Private Sub cmdExecuter_Click()
'---CONSTANTES---
Const conErreur As String = "Erreur"
Const conErreurDateDeNaissance As String = "Vouz devez entrer votre date de naissance sous la forme : aaaa-mm-jj."
Const conErreurAge As String = "Vous devez être âgé de plus de 18 pour utiliser le programme."
'---VARIABLES---
Dim strTamponMsgBox As String
Dim dtmDateNaissance As Date
Dim intNbJourDate As Integer
Dim intNbMoisDate As Integer
Dim intNbAnneeDate As Integer
Dim dtmDateNow As Date
Dim intNbJourNow As Integer
Dim intNbMoisNow As Integer
Dim intNbAnneeNow As Integer
'---TRAITEMENT---
'Trouver l'année, le mois et le jour de la date présente
intNbAnneeNow = Mid(dtmDateNow, 1, 4)
intNbMoisNow = Mid(dtmDateNow, 6, 2)
intNbJourNow = Mid(dtmDateNow, 9, 2)
'Trouver l'année, le mois et le jour de la date de naissance
intNbAnneeDate = Mid(txtDateDeNaissance.Text, 1, 4)
intNbMoisDate = Mid(txtDateDeNaissance.Text, 6, 2)
intNbJourDate = Mid(txtDateDeNaissance.Text, 9, 2)
If ((intNbAnneeNow - intNbAnneeDate) >= 18) Then
If (intNbMoisDate > intNbMoisNow) Then
Print " tu a lage ok"
Else
If (intNbMoisDate = intNbMoisNow) Then
If (intNbJourDate >= intNbJourNow) Then
Print "tu a lage ok"
Else
strTamponMsgBox = MsgBox(conErreurAge, vbCritical, conErreur)
End If
End If
End If
End If
Print "Fin"
End Sub
'C'est du beau code c'est propre, ça devrais toujours etre comme ca :)
A+
AlieNPoWereD
Messages postés3Date d'inscriptionjeudi 27 octobre 2005StatutMembreDernière intervention17 septembre 2008 27 oct. 2005 à 16:16
Il y avais une petite erreur alors... j'ai aranger mes IF.... bonne prog...
Private Sub cmdExecuter_Click()
'---CONSTANTES---
Const conErreur As String = "Erreur"
Const conErreurDateDeNaissance As String = "Vouz devez entrer votre date de naissance sous la forme : aaaa-mm-jj."
Const conErreurAge As String = "Vous devez être âgé de plus de 18 pour utiliser le programme."
'---VARIABLES---
Dim strTamponMsgBox As String
Dim dtmDateNaissance As Date
Dim intNbJourDate As Integer
Dim intNbMoisDate As Integer
Dim intNbAnneeDate As Integer
Dim dtmDateNow As Date
Dim intNbJourNow As Integer
Dim intNbMoisNow As Integer
Dim intNbAnneeNow As Integer
'---TRAITEMENT---
'Trouver l'année, le mois et le jour de la date présente
intNbAnneeNow = Mid(dtmDateNow, 1, 4)
intNbMoisNow = Mid(dtmDateNow, 6, 2)
intNbJourNow = Mid(dtmDateNow, 9, 2)
'Trouver l'année, le mois et le jour de la date de naissance
intNbAnneeDate = Mid(txtDateDeNaissance.Text, 1, 4)
intNbMoisDate = Mid(txtDateDeNaissance.Text, 6, 2)
intNbJourDate = Mid(txtDateDeNaissance.Text, 9, 2)
If ((intNbAnneeNow - intNbAnneeDate) > 18) Then
Print "Tu a l'age"
Else
If Int((intNbAnneeNow - intNbAnneeDate) = 18) Then
If (intNbMoisDate > intNbMoisNow) Then
Print "Tu a l'age"
Else
If (intNbMoisDate = intNbMoisNow) Then
If (intNbJourDate >= intNbJourNow) Then
Print "Tu a l'age"
Else
strTamponMsgBox = MsgBox(conErreurAge, vbCritical, conErreur)
End If
End If
End If
Else
strTamponMsgBox = MsgBox(conErreurAge, vbCritical, conErreur)
End If
End If