Change date with KeyDown
The following code changes a date in a form text box like this:
txtDate.Text = Format(Date, "mm/dd") with left and right arrows. Private Sub txtDate_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) Dim sDate As String Dim v As Integer, dte As Date Select Case KeyCode Case 37 ' Left v = -1 Case 39 ' Right v = 1 Case Else v = 0 End Select sDate = txtDate.Text If InStr(sDate, ",") Then sDate = Trim(Right(sDate, Len(sDate) - InStr(sDate, ","))) End If If IsDate(sDate) And v < 0 Then dte = CDate(sDate) dte = dte + v txtDate = Format(dte, "mm/dd") End If End Sub Can this be adapted to change a Time value formatted thus: txtTime.text = Format(Now(), "h:mm AM/PM") by 15 minute increments. |
Change date with KeyDown
This worked for me:
Private Sub txtDate_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) Dim sDate As String Dim v As Integer, dte As Date Select Case KeyCode Case 37 ' Left v = -1 Case 39 ' Right v = 1 Case Else v = 0 End Select sDate = txtDate.Text If InStr(sDate, ",") Then sDate = Trim(Right(sDate, Len(sDate) - InStr(sDate, ","))) End If If IsDate(sDate) And v < 0 Then dte = CDate(sDate) dte = dte + v*TimeValue("00:15") txtDate = Format(dte, "hh:mm") End If End Sub -- Regards, Tom Ogilvy "John Pierce" wrote in message oups.com... The following code changes a date in a form text box like this: txtDate.Text = Format(Date, "mm/dd") with left and right arrows. Private Sub txtDate_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) Dim sDate As String Dim v As Integer, dte As Date Select Case KeyCode Case 37 ' Left v = -1 Case 39 ' Right v = 1 Case Else v = 0 End Select sDate = txtDate.Text If InStr(sDate, ",") Then sDate = Trim(Right(sDate, Len(sDate) - InStr(sDate, ","))) End If If IsDate(sDate) And v < 0 Then dte = CDate(sDate) dte = dte + v txtDate = Format(dte, "mm/dd") End If End Sub Can this be adapted to change a Time value formatted thus: txtTime.text = Format(Now(), "h:mm AM/PM") by 15 minute increments. |
All times are GMT +1. The time now is 07:05 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com