Microsoft 365 Format combobox renvoie du texte

DURY

XLDnaute Nouveau
Bonjour,
j'ai un userforme avec un combobox qui vient récupérer des mois sur la base d'un format de ce style : 01/05/2020
j'ai utilisé la commande format pour présenter le résultats sous une forme plus cosmétique dans le champ :

ligne de code :
Private Sub MOIS_V_Change()
MOIS_V = Format(MOIS_V, "mmmm-yy")
End Sub

on a donc dans le champs l'affichage suivant : mai-20 ce qui est parfait ...
par contre quand je transfère dans le tableau de données il m'écrit mai-20 (en format texte ) alors que je souhaiterai 01/05/20 en format date
avez vous une combine pour récupéré la donnée en format date.

Merci d'avance
Sylvain
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @DURY , le Forum

Oui c'est un éternel problème avec les Control des UserForm, surtout quand on est en FR, et pas US, difficile de récupérer les Dates ensuite.

Essaie avec la Fonction de conversion type : "CDate" mais ca risque de planter car en plus tu forces un format mmmm-yy pour la cometique...
Sinon il faut faire une Variable Public MyDate As Date que tu initialiseras en même temps que tu alimentes ta Combo.... Ou bien sur une seconde colonne où tu peux stocker la valeur numérique des date de ta feuille... Enfin il faut voir, il y a plusieurs approches...

Bon courage
@+Thierry
 

DURY

XLDnaute Nouveau
Bonjour Thierry,

merci pour cette astuce qui a fonctionner en mode bricole : le Cdate me renvoyai le 20 du mois. donc j'ai soustrait 19 et hop le tour est joué. je retombe sur mes pieds...

Bonne journée
et encore merci.
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @DURY @ChTi160 , le Forum

Attention Dury l'astuce de moins 19 sur un CDate , je n'en ai jamais entendu parler ... Fais attention, essaies à différentes dates, style un 29 février ... Car je suis un peu surpris que ca fonctionne comme ça...

Hello mon Jean-Marie, je confine un peu ici entre les moemnts creux en télétravail ;)
Et j'écoute le dernier Stones aussi... (Voir mon fi I'm a Ghost, Living in a Ghost Town...

Bien à toi, à vous,
@+Thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @patricktoulon , le fil

Tout à fait d'accord avec toi, c'est ce que j'ai pointé à Dury dans mon post...

Dury je te conseille de regarder comment je m'y prendrais si un jour j'ai ce cas de figures.

Bien @Toi, @vous
@+Thierry
 

Pièces jointes

  • XLD_.Dury_Sample_ Collecting_Date_from_USF_ComboBox.xlsm
    23.2 KB · Affichages: 7

DURY

XLDnaute Nouveau
Bonjour a tous,

merci pour tous ces commentaires et ces remarques.
finalement j'ai modifié les choses suivantes :
Formatage du combobox (MOIS_V) qui affiche le champ ex: janvier-2020 en partant de 01/01/2020...

Private Sub MOIS_V_Change()
MOIS_V = Format(MOIS_V, "mmmm-yyyy")
End Sub

puis récupération de la valeur, dépose en B (dernière ligne) et formatage de la cellule à l'arrivée :

Range("B" & DL).Value = CDate(MOIS_V.Value)
Range("B" & DL).Select
Selection.NumberFormat = "[$-fr-FR]mmmm-yyyy;@"
et je retombe sur mes pattes.

en tout cas je garde sous le coude le petit fichier..

Merci a tous.
 

patricktoulon

XLDnaute Barbatruc
Bonjour
étonnant cela o_O ?
j'examinerais cela de plus pres car ca n'est pas logique

ceci ne devrait pas passer et devrait donc planter le cdate
MOIS_V = Format(MOIS_V, "mmmm-yyyy")

Range("B" & DL).Value = CDate(MOIS_V.Value)
étonnant et curieux !!;)
 

patricktoulon

XLDnaute Barbatruc
re
en effet avec row source au départ on a l'affichage formaté pour les items et a la selection le numero de serie de la date
avec .list =sheets("DATA2").[Q2:Q25].value en vba on a les dates non formatées dans la liste et les dates non formatées a la sélection dans le .value
étonnant ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 024
Messages
2 084 718
Membres
102 638
dernier inscrit
TOTO33000