- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
2#
發表於 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
複製代碼 |
|