View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
John Pierce John Pierce is offline
external usenet poster
 
Posts: 93
Default 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.