Easy-Micro

ESPACEMEMBRE Fonctions VBA
Date

Les fonctions de date

Sub Mes_Dates()

'Day : jour du mois de 1 à 31
'Year : numéro de l'année
'Month: numéro du mois

'Numéro du jour
Range("A1").Value = "Nous sommes le " & Day(Now)

'Numéro du mois
Range("A2").Value = Month(Now)

'Fonction aujourdhui()
Range("A2").Formula = "=Today()"

'Date du jour (2 techniques)
Range("A2").Value = DateSerial(Year(Now), Month(Now), Day(Now))
Range("A2").Value = Year(Now) & "/" & Month(Now) & "/" & Day(Now)

End Sub

Sub Nombre_De_Jour_Du_Mois()

'Nombre de jour du mois
Range("A3").Value = Day(DateSerial(Year(Now), Month(Now) + 1, 0))
'DateSerial renvoie une date - Syntaxe: DateSerial(year, month, day)
'DateSerial(Year(Now), Month(Now) + 1, 0) renvoie la date du dernier jour du mois
End Sub

Même exemple que ci-dessus mais avec une fonction
Public Function NbJourMoisCourant(UneDate As Date)
NbJourMoisCourant = Day(DateSerial(Year(UneDate), Month(UneDate) + 1, 0))
End Function

Sub Nom_Du_Jour_De_La_Semaine()
Dim madate As Date
madate = "05/02/2018"

'Exemple simple
Cells(1, 1) = WeekdayName(Day(madate), False, 2)

'Autre exemple
Cells(1, 2) = WeekdayName(Weekday(madate, 2), False, 2)
'Syntaxe de WeekdayName( unedate, [date en abrégée], début de la semaine - 2=lundi et 1 = dimanche)
'Syntaxe de Weekday( unedate, début de la semaine)
End Sub

Numéro de la semaine :
Sub proc_numero_de_la_semaine()
Dim nosemaine As String
Dim madate As Date

madate = Range("B1").Value 'Récupère la date du jour affichée dans B1
'Calcul le numéro de la semaine de cette date :
nosemaine = Format(madate, "ww", vbMonday, vbFirstFourDays)
Range("B2").Value = nosemaine 'Affiche le numéro de la semaine
End Sub

Format de date

Exemple:
Dim madate
madate = Year(Now)
'Format de date longue :
Cells(1, ).Value = Format(madate, "Long Date")

'Renvoie le mois en cours sous 2 chiffre:
Range("A2") = Format(Now(), "mm")


Sub proc_modifier_format_date()

'Exemple de modification de format Date sur cellule
Range("A1").Value = CDate(Range("A1").Value) ' méthode 1
Range("A1").Value = Format(Range("A1").Value, "dd/mm/yy") ' méthode 2

'Exemple de modification de format Date sur variable
mavariable = CDate(mavariable) ' méthode 1
mavariable = Format(mavariable, "dd/mm/yy") ' méthode 2

'Exemple de modification de format Date sur champ de formulaire
monform.monchamptxt = CDate(monform.monchamptxt) ' méthode 1
monform.monchamptxt = Format(monform.monchamptxt, "dd/mm/yy") ' méthode 2

End Sub

Format Nombre et Monétaire

Exemple:
'Format de nombre avec un zéro devant :
Range("A2") = Format(Range("A2"), "0#")

'code vba pour format monétaire sur champ de formulaire
monform.TxtMontant.Value = Format(monform.TxtMontant.Value, "#'##0.00 €")


< Page précédente FONCTIONS VBA Page suivante >