XL 2016 Insertion une date (JJ/MM/AAAA) et la time (HH:MM) dans une ListBox

MOEZ-TUN

XLDnaute Occasionnel
Je veut insert la date (JJ/MM/AAAA) et la time (HH:MM) dans une ListBox a l'aide d'une calendrier.

1693406116156.png



Je utilise la fonction suivante , et n'arrive pas a un bonne résultat.

Private Sub TextBox83_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
UFmCalend.Show
Me.TextBox83.Value = LaDate
End Sub
 

Pièces jointes

  • Classeur1.xlsm
    77 KB · Affichages: 5

Modeste geedee

XLDnaute Barbatruc
Je veut insert la date (JJ/MM/AAAA) et la time (HH:MM) dans une ListBox a l'aide d'une calendrier.

Regarde la pièce jointe 1177516


Je utilise la fonction suivante , et n'arrive pas a un bonne résultat.

Private Sub TextBox83_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
UFmCalend.Show
Me.TextBox83.Value = LaDate
End Sub
Bonsour
Textbox attend un texte
Quel est le type de "ladate"
 

Dranreb

XLDnaute Barbatruc
Bonjour.
C'est le format avec lequel est normalement écrite la date dans les contrôles.
Essayez comme ça :
VB:
Option Explicit
Private Sub UserForm_Activate()
   If Me.ActiveControl Is TextBox4 Then TextBox4_Enter ' parce qu'hélas plus invoqué après affichage.
   End Sub
Private Sub TextBox83_Enter()
   UFmCalend.Coupler "Input", TextBox83
   End Sub
Private Sub TextBox4_Enter()
   If Not Me.Visible Then Exit Sub ' parce qu'hélas invoqué avant affichage.
   UFmCalend.Coupler "Output", TextBox4
   End Sub
Remarque : les complications sont dues à ce que la TextBox4 est à la position 1 de tabulation des contrôles.
L'évènement Enter du contrôle est traité avant affichage effectif de l'UserForm, et malheureusement plus après.

Informations: LaDate est le nom d'une variable Private du UFmCalend. Inutilisable à l'extérieur donc. Par contre il est munie d'une propriété Value, d'ailleurs entachée d'une erreur que je n'avais pas vue tellement elle est peu utilisée. Corrigée comme suit à l'avenir :
VB:
Public Property Get Value() As Date
Rem. ——— Propriété en lecture/écriture.
   Value = LaDate + LHeure
   End Property
Public Property Let Value(ByVal RHS As Date)
   LaDate = Int(RHS): LHeure = RHS - LaDate
   MontrerLaDate FocusJour:=True: MontrerLHeure
   End Property
 
Dernière édition:

MOEZ-TUN

XLDnaute Occasionnel
Bonjour.
C'est le format avec lequel est normalement écrite la date dans les contrôles.
Essayez comme ça :
VB:
Option Explicit
Private Sub UserForm_Activate()
   If Me.ActiveControl Is TextBox4 Then TextBox4_Enter ' parce qu'hélas plus invoqué après affichage.
   End Sub
Private Sub TextBox83_Enter()
   UFmCalend.Coupler "Input", TextBox83
   End Sub
Private Sub TextBox4_Enter()
   If Not Me.Visible Then Exit Sub ' parce qu'hélas invoqué avant affichage.
   UFmCalend.Coupler "Output", TextBox4
   End Sub
Remarque : les complications sont dues à ce que la TextBox4 est à la position 1 de tabulation des contrôles.
L'évènement Enter du contrôle est traité avant affichage effectif de l'UserForm, et malheureusement plus après.

Informations: LaDate est le nom d'une variable Private du UFmCalend. Inutilisable à l'extérieur donc. Par contre il est munie d'une propriété Value, d'ailleurs entachée d'une erreur que je n'avais pas vue tellement elle est peu utilisée. Corrigée comme suit à l'avenir :
VB:
Public Property Get Value() As Date
Rem. ——— Propriété en lecture/écriture.
   Value = LaDate + LHeure
   End Property
Public Property Let Value(ByVal RHS As Date)
   LaDate = Int(RHS): LHeure = RHS - LaDate
   MontrerLaDate FocusJour:=True: MontrerLHeure
   End Property
Merci pour votre reponse
Ca marche , trés bien.

Pour info j'ai utilisé seulement cette commande (voir ce dessous), et reste a moi le choix de choisir la type du date soit avec l'heure, soit sans heure:


Private Sub TextBox4_Enter()
If Not Me.Visible Then Exit Sub ' parce qu'hélas invoqué avant affichage.
UFmCalend.Coupler "Output", TextBox4
End Sub

Private Sub TextBox83_Enter()
If Not Me.Visible Then Exit Sub ' parce qu'hélas invoqué avant affichage.
UFmCalend.Coupler "Input", TextBox83
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
315 093
Messages
2 116 130
Membres
112 667
dernier inscrit
foyoman