Manipuler les dates et heures (addition et soustraction)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 101 959 fois - Téléchargée 45 fois

Contenu du snippet

'Toutes les actions possibles avec les DATES ET HEURE
'-----------------------------------------------------
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
SOMMAIRE
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

'1.La fonction DateSerial
'2.La fonction DateValue
'3.Récupération partielle de date
'4.La fonction TimeSerial
'5.Ajouter une valeur à une date ou une heure
'6.Soustraire une valeur à une date ou une heure

'1.LA FONCTION DateSerial
'************************

'La fonction DateSerial renvoie la valeur numérique correspondant à une année, un mois et un 'jour

MaDate.text = DateSerial(Year(Now), Month(Now), Day(Now))

'2.LA FONCTION DateValue
'***********************

'DateValue renvoie une valeur numérique pour un date passé comme chaine de caractère '(String)

MaVariableNumerique = DateValue("12 mai 2002")

'3.RECUPERATION PARTIELLE DE DATE
'********************************

'Le jour, le mois et l'année sont renvoyé par les fonctions Day,Month et Year

'Jour.Text = Day(Now)
'Mois.Text = Month(Now)
'Annee.Text = Year(Now)

'4.LA FONCTION TimeSerial
'************************

'Renvoie la valeur horaire d'une heure, d'une minute et d'une seconde. Les valeurs d'heure 'différents peuvent etres comparées immédiantement, sans les décomposer en heure, minute, 'secondes.

MonHeure.Text = TimeSerial(Hour(Now), Minute(Now), Second(Now))

'5.AJOUTER UNE VALEUR A UNE DATE OU UNE HEURE
'********************************************

'SYNTAXE:

'Resultat.Text = DateAdd(Intervalle, Valeur, Date)

'EXEMPLES:

'Ajouter 5 mois à la date actuelle
'---------------------------------

Resultat.Text = DateAdd("m", 5, Date)

'Ajouter 10 minutes à l'heure actuelle
'-------------------------------------

Resultat.Text = DateAdd("n", 10, Time)

'INTERVALES POSSIBLES:

'*************************************************
'*INTERVALES *DESCRIPTION *
'*************************************************
' aaaa année
' t trimestre
' m mois
' a jour de l'année
' j jour
' e jour de la semaine
' ee semaine
' h heure
' n minute
' s seconde

'6.SOUSTRAIRE UNE VALEUR A UNE DATE OU UNE HEURE
'***********************************************

Resultat.Text = DateDiff(Intervale, Date1, Date2)

'Pour les intervalles, voir le tableau du n°5

Source / Exemple :


'Toutes les actions possibles avec les DATES ET HEURE
'-----------------------------------------------------
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
		SOMMAIRE
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

'1.La fonction DateSerial
'2.La fonction DateValue
'3.Récupération partielle de date
'4.La fonction TimeSerial
'5.Ajouter une valeur à une date ou une heure
'6.Soustraire une valeur à une date ou une heure

'1.LA FONCTION DateSerial
'************************

'La fonction DateSerial renvoie la valeur numérique correspondant à une année, un mois et un 'jour

MaDate.text = DateSerial(Year(Now), Month(Now), Day(Now))

'2.LA FONCTION DateValue
'***********************

'DateValue renvoie une valeur numérique pour un date passé comme chaine de caractère '(String)

MaVariableNumerique = DateValue("12 mai 2002")

'3.RECUPERATION PARTIELLE DE DATE
'********************************

'Le jour, le mois et l'année sont renvoyé par les fonctions Day,Month et Year

'Jour.Text = Day(Now)
'Mois.Text = Month(Now)
'Annee.Text = Year(Now)

'4.LA FONCTION TimeSerial
'************************

'Renvoie la valeur horaire d'une heure, d'une minute et d'une seconde. Les valeurs d'heure 'différents peuvent etres comparées immédiantement, sans les décomposer en heure, minute, 'secondes.

MonHeure.Text = TimeSerial(Hour(Now), Minute(Now), Second(Now))

'5.AJOUTER UNE VALEUR A UNE DATE OU UNE HEURE
'********************************************

'SYNTAXE:

'Resultat.Text = DateAdd(Intervalle, Valeur, Date)

'EXEMPLES:

    'Ajouter 5 mois à la date actuelle
    '---------------------------------

    Resultat.Text = DateAdd("m", 5, Date)

    'Ajouter 10 minutes à l'heure actuelle
    '-------------------------------------

    Resultat.Text = DateAdd("n", 10, Time)

'INTERVALES POSSIBLES:

'*************************************************
'*INTERVALES         	*DESCRIPTION            *
'*************************************************
'  aaaa			année
'  t			trimestre
'  m			mois
'  a			jour de l'année
'  j			jour
'  e			jour de la semaine
'  ee  			semaine
'  h			heure
'  n			minute
'  s			seconde

'6.SOUSTRAIRE UNE VALEUR A UNE DATE OU UNE HEURE
'***********************************************

Resultat.Text = DateDiff(Intervale, Date1, Date2)

'Pour les intervalles, voir le tableau du n°5

Conclusion :


Et voilà

A voir également

Ajouter un commentaire Commentaires
olyonnais76
Messages postés
2
Date d'inscription
mercredi 8 novembre 2006
Statut
Membre
Dernière intervention
17 juin 2011

17 juin 2011 à 16:58
Merci pour votre aide à tous mais j'ai résolu mon problème de date
Egalon
Messages postés
125
Date d'inscription
lundi 26 avril 2004
Statut
Membre
Dernière intervention
17 juin 2011

17 juin 2011 à 09:03
olyonnais76, tu pourrais poster un extrait de ton tableau, je crains comprendre...
cs_dedian
Messages postés
1
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
16 juin 2011

16 juin 2011 à 20:25
ça c'est tout ce qu'il me fallait. Merci
olyonnais76
Messages postés
2
Date d'inscription
mercredi 8 novembre 2006
Statut
Membre
Dernière intervention
17 juin 2011

8 avril 2011 à 10:10
bonjour à tous
Débutant en VBA, je suis devant un problème que je n'arrive pas à résoudre.
dans 1 feuille excel, je dois recueillir les données de fonctionnement de turbines (MW), ces données sont actualisées TOUTES les minutes et ça sur 1 mois (soit environ 45000 lignes).
Il me faut faire la somme de MW produits par JOUR à reporter dans un tableau.
Les dates sont donc variables car l'opération est à faire mensuellement.
Je n'arrive pas à déclarer mes variables (dates) et à écrire le tableau avec par ex 01/03/11,02/03/11,03/03/11... jusqu'à la fin du mois
De plus il faudrait prendre en compte Février...
Si queleques personnes pouvaient m'aider, ce serait magnifique
Merci d'avance
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
16 juil. 2009 à 09:18
pour l'heure actuelle, faire simplement

MonHeure.Text = Now

MonHeure.Text = TimeSerial(Hour(Now), Minute(Now), Second(Now))
se remplace d'ailleurs par:
MonHeure.Text = Now - Date
Afficher les 49 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.