標題:
[發問]
輸入錯誤值,游標停在原欄位
[打印本頁]
作者:
sammay
時間:
2012-1-11 11:37
標題:
輸入錯誤值,游標停在原欄位
請問各位前輩們:
如附件檔,在表單2的日期欄位若輸入不符設定的值時(例如:20110202後,設定值是2012-2018年),會出現錯誤訊息,但是游標會往下一個欄位跑。
請問當日期欄位輸入不符設定值時,如何讓游標停在日期欄位呢?
[attach]9179[/attach]
作者:
GBKEE
時間:
2012-1-11 16:28
本帖最後由 GBKEE 於 2012-1-11 16:40 編輯
回復
1#
sammay
Option Explicit
Private Sub CommandButton1_Click()
UserForm2.Show 1 '表單開啟模式為 1 (強制回應)時: Msgbox 提出訊息後, 才會強制回應到表單.
'UserForm2.Show '表單開啟模式 (非強制回應)
End Sub
複製代碼
Option Explicit
Dim MyClose As Boolean '制訂表單私用變數 預設為 False
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
MyClose = True '表單關閉: 變數=True
End Sub
Private Sub TextBox7_Exit(ByVal Cancel As MSForms.ReturnBoolean) ' ***表單關閉時也會觸動此程序
Dim Msg As String
If MyClose = True Then Exit Sub '表單關閉後:MyClose=True
If IsDate(TextBox7) Then '為日期
If Year(TextBox7) < 2012 Or Year(TextBox7) > 2018 Then
Msg = "日期須是 2012年-2018年"
Else
TextBox7 = Format(TextBox7, "YYYY/M/D") '如 2013/2 ->2013/2/1
End If
Else '非為日期
Msg = "必須是日期 yyyy/m/d"
End If
If Msg <> "" Then
Cancel = True 'Cancel = True 才會回到此控制項
MsgBox Msg
With TextBox7
.SelStart = 0 '從0 開始選擇
.SelLength = Len(.Text) '選擇的字元數
End With
End If
End Sub
複製代碼
作者:
sammay
時間:
2012-1-16 08:44
回復
2#
GBKEE
感謝大大回覆,萬分感謝!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)