collection boite de dialogue perso episode 6
par
, 10/02/2019 à 17h43 (5673 Affichages)
[I][B][COLOR=#b22222][SIZE=2] collection boite de dialogue perso episode 6
[/SIZE][/COLOR][/B][/I]
un calendrier dans son propre formulaire utilisable sur sheets ou textbox et combobox
et si au click droit sur cellule on avait un calendrier qui s'affiche pour mettre la date choisi dans celles ci
et si au click droit sur un textbox on avait le calendrier qui s'affiche pour choisir une date
et pareil dans une combobox a fin de ne pas etre obligé de derouler des kilometres une combo pour choisir une date
et si on avait la possibilité de choisr sans sub ou fonction suplementaire le format de sortie
et si il semettais en francais ou en US(anglais) en fonction de la region parametrée dans le system
je vous propose cette version de mon calendrier dans un userform
elle peut vous sortir les 3 format application.international(xldateorder )
et un dernier qui se contente de vous sortir la date en fonction de celle du system automatiquement
je rapelle qu'il es question ici d'avoir un calendrier dispo meme pour ceux qui sont en 64 bits
etant donné que je n'utilise toujours pas de control calendart et autre datepicker ,seulement des controls generiques dispos dans toute versions d'excel
methode d'utilisation dans un sheets
[CODE]Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim dat
If Target.Column = 1 And Target.Cells.Count = 1 Then
Cancel = True
With Calendrier
Set .Destination = Target
.Show
If .DateResult <> False Then Target = .DateResult
Unload Calendrier
End With
End If
End Sub
[/CODE]
[ATTACH=CONFIG]448779[/ATTACH]
exemple d'utilisation dans des textbox d'un userform sous divers format
[ATTACH=CONFIG]448783[/ATTACH]
[CODE]Option Explicit
'
Private Sub ComboBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
With Calendrier
Set .Destination = ComboBox1
.Show
If .DateResult <> False Then ComboBox1.Value = .DateResult: If ComboBox1.ListIndex = -1 Then ComboBox1.Value = "Nofound!!"
Unload Calendrier
End With
End If
End Sub
'
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer): KeyCode = 0: End Sub
Private Sub TextBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
With Calendrier
Set .Destination = TextBox1
.Show
If .DateResult <> False Then TextBox1.Value = .DateResult
Unload Calendrier
End With
End If
End Sub
'
Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer): KeyCode = 0: End Sub
Private Sub TextBox2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
With Calendrier
Set .Destination = TextBox2
.region = 0
.Show
If .DateResult <> False Then TextBox2.Value = .regionDate0
Unload Calendrier
End With
End If
End Sub
'
Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer): KeyCode = 0: End Sub
Private Sub TextBox3_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
With Calendrier
Set .Destination = TextBox3
.separateur = "-"
.region = 2
.Show
If .DateResult <> False Then TextBox3.Value = .regionDate2
Unload Calendrier
End With
End If
End Sub
'
Private Sub TextBox4_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 2 Then
With Calendrier
Set .Destination = TextBox4
.region = 1
.separateur = "-"
.Show
If .DateResult <> False Then TextBox4.Value = .regionDate1
Unload Calendrier
End With
End If
End Sub
[/CODE]
exemple en piece jointe