返回列表 上一主題 發帖

[發問] Textbox 兩位數的設定

[發問] Textbox 兩位數的設定

想請教一下,我有一個 textbox,希望別人輸入的範圍要大於 40 和小於 50,
如果不是的話,要 show 出一個表單提醒別人重新輸入,程式如下:
Private Sub textbox32_Change()
If textbox32.Value > 50 or textbox32.Value < 40 Then
UserForm2.Show     'Please fill in 40~50.
textbox32.Value = ""
End If
End Sub

但是 <40 這一項,只要 key in 進一個個位數,警告表單馬上就浮現~~~
這要怎麼辦?

感謝大大幫忙~~

回復 2# GBKEE

不好意思,之前的已用其他方法解決,但現在借用你的方法,出現了一點小問題

我把程式改為如下
  1. Private Sub TextBox34_Change()

  2. With Sheet4
  3. .Range("H4").Value = textbox34.Text
  4. End With
  5. End Sub
  6. ' 以上變更 textbox 就順便變更儲存格
  7. ' 以下就依照你的程式碼撰寫

  8. Private Sub TextBox34_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  9. Dim Exit_Msg As Boolean
  10.    
  11.     If Exit_Msg = True Then Exit Sub
  12.     If Not IsNumeric(TextBox32) Sheets(4).Range("h4") < Sheets(4).Range("C35") Or Sheets(4).Range("h4") > Sheets(4).Range("C36") Then
  13.     Cancel = True
  14.     'With textbox34
  15.     '    .SelStart = 0
  16.     '    .SelLength = Len(.Text)
  17.     '    End With
  18.         MsgBox "Np 須是 大於" & Sheets(4).Range("C35") & " 和小於 " & Sheets(4).Range("C34")
  19.     End If

  20. End Sub

  21. Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

  22.     Exit_Msg = True
  23. End Sub
複製代碼
不管我 textbox34 輸入什麼值,Msgbox 都會出現
最後我關掉視窗,Msgbox 還會再出現一次~~
請問這要怎麼解?

感激不盡!

TOP

回復 3# bowwow1975

不好意思,已解決!!!
感謝有關注的大大們!

TOP

        靜思自在 : 屋寬不如心寬。
返回列表 上一主題