Bonjour à tous,
je me heurte à un problème de date que je n'arrive pas à extraire
Par un userform avec un calendrier, je collecte la date souhaitée, sous forme 17/03/2012
et pour mes besoins ultérieurs, je dois "découper" cette date en 3 morceaux dont je me sers par la suite, du style
"17 mars 2012", c'est-à-dire je dois afficher le mois en toutes lettres
Je pensais qu'avec les lignes suivantes, c'était OK mais ça bugge … est-ce parce que je suis en userform ? je veux en effet que le découpage se fasse quand je valide la saisie
Merci d'avance pour vos lumières !
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub OK_Taste_Click() ' code du userform quand on valide
Sheets("Paramètres").Activate ' je me positionne dans l'onglet qui recueille la date via userform
Range("J105").Select ' c'est en j105 que la date "brute" est transférée (ex 17/03/2012)
ActiveCell.Value = Kalendar ' Kalendar est la valeur "prélevée" via le calendrier intégré, genre 'Date&Time Picker
Dim Ma_Date As variant ' je ne sais pas trop si c'est obligatoire mais comme je suis en option explicit …
Dim Mon_Mois As variant
Ma_Date = Range("j105").Value ' ici, je définis que Ma_Date prend la valeur donnée par le D&T Picker
Mon_Mois = MonthName(Month(Ma_Date)) ' pour extraire le mois en ttes lettres
Range("f106").Select ' dans cette cellule, je veux extraire le jour
ActiveCell.Value = Day(CDate(Ma_Date)) ' j'attends donc comme résultat "17"
Range("g106").Select ' dans cette cellule, je veux placer le mois, en toutes lettres
ActiveCell.Value = StrConv(Mon_Mois, vbProperCase) 'vbproper pour gérer les min/majuscules, j'attends comme 'résultat "Mars"
range("h106").select ' dans cette cellule, je veux placer l'année
ActiveCell.Value = Year(CDate(Ma_Date)) ' j'attends comme résultat "2012"
Unload Me
End Sub
je me heurte à un problème de date que je n'arrive pas à extraire
Par un userform avec un calendrier, je collecte la date souhaitée, sous forme 17/03/2012
et pour mes besoins ultérieurs, je dois "découper" cette date en 3 morceaux dont je me sers par la suite, du style
"17 mars 2012", c'est-à-dire je dois afficher le mois en toutes lettres
Je pensais qu'avec les lignes suivantes, c'était OK mais ça bugge … est-ce parce que je suis en userform ? je veux en effet que le découpage se fasse quand je valide la saisie
Merci d'avance pour vos lumières !
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub OK_Taste_Click() ' code du userform quand on valide
Sheets("Paramètres").Activate ' je me positionne dans l'onglet qui recueille la date via userform
Range("J105").Select ' c'est en j105 que la date "brute" est transférée (ex 17/03/2012)
ActiveCell.Value = Kalendar ' Kalendar est la valeur "prélevée" via le calendrier intégré, genre 'Date&Time Picker
Dim Ma_Date As variant ' je ne sais pas trop si c'est obligatoire mais comme je suis en option explicit …
Dim Mon_Mois As variant
Ma_Date = Range("j105").Value ' ici, je définis que Ma_Date prend la valeur donnée par le D&T Picker
Mon_Mois = MonthName(Month(Ma_Date)) ' pour extraire le mois en ttes lettres
Range("f106").Select ' dans cette cellule, je veux extraire le jour
ActiveCell.Value = Day(CDate(Ma_Date)) ' j'attends donc comme résultat "17"
Range("g106").Select ' dans cette cellule, je veux placer le mois, en toutes lettres
ActiveCell.Value = StrConv(Mon_Mois, vbProperCase) 'vbproper pour gérer les min/majuscules, j'attends comme 'résultat "Mars"
range("h106").select ' dans cette cellule, je veux placer l'année
ActiveCell.Value = Year(CDate(Ma_Date)) ' j'attends comme résultat "2012"
Unload Me
End Sub