不确定是否可行但是有一段代码表明当你输入2个字符时它会跳过:或/符号(一个用于日期和一个用于需要手动输入的时间。
我猜它需要在文本框的更改事件中,但不确定在输入2之后将焦点设置为3位数的代码类型。
由于 人
答案 0 :(得分:1)
假设您有一个示例UserForm1,其中包含2个TextBoxes(日期为TextBox1
,时间为TextBox2
)
您可以不断检查文本框中键入的字符串的长度,如果日期等于8,则操作值的时间等于4,即。
Private Sub TextBox1_Change()
Dim current As String
current = TextBox1.Value
If Len(TextBox1) = 8 Then
current = Left(TextBox1, 2) & "/" & Mid(TextBox1, 3, 2) & "/" & Right(TextBox1, 4)
TextBox1 = current
End If
End Sub
Private Sub TextBox2_Change()
Dim current As String
current = TextBox2.Value
If Len(TextBox2) = 4 Then
current = Left(TextBox2, 2) & ":" & Right(TextBox2, 2)
TextBox2 = current
End If
End Sub
所以现在如果你启动UserForm1并输入例如10102014
,代码会自动将其转换为日期格式,在字符之间添加正斜杠。同样适用于时间