在VBA

2014-08-31 95 views
0

另一單選項輸入框我有一個簡單的輸入框輸入員工的ID:在VBA

id = InputBox("Enter ID NUMBER of the employee") 
    If id = "" Or Not IsNumeric(id) Then 
     MsgBox "No ID entered" 
     Call prepareToExit 
     Exit Sub 
    End If 

到現在爲止已經有充分的我,但現在我需要能夠在進入另一個參數該對話框將表示用戶是使用程序的默認設置還是想要進入另一個菜單以選擇選項(例如,將默認文件夾更改爲用戶定義的)。

有人可以解釋如何在輸入框中添加這個單一選項。 我明白,它不能用InputBox方法完成。

我需要的是另一個按鈕,如「高級...」,以瞭解用戶是否想要進行其他設置。

謝謝!

+1

你需要創建一個用戶窗體 – 2014-08-31 08:33:13

回答

0

三個選項浮現在腦海中:
1.使用一個定製窗體
2.添加另一個MSGBOX詢問有關額外的選項(是/否)
3.包括輸入的字符串中的選項。這在這裏很簡單,但對於這樣的事情,正則表達式可能非常有用。如果這對某些用戶來說可能看起來太「隱祕」,那麼這取決於你的目標受衆。

一個例子:

Dim rx, rxM 
Dim ID As String 
Dim IDvalue As Long 
Dim optionFlag As Boolean 

Set rx = CreateObject("vbscript.regexp") 
rx.Pattern = "^(\d+)(\+)?$" 

ID = InputBox("Enter ID NUMBER of the employee" & vbCrLf & _ 
"Add '+' for advanced options, e. g. 100345+") 

If Not rx.test(ID) Then 
'If ID = "" Or Not IsNumeric(ID) Then 
    MsgBox "No ID entered" 
    Call prepareToExit 
    Exit Sub 
Else 
    Set rxM = rx.Execute(ID) 
    IDvalue = CLng(rxM(0).submatches(0)) 
    optionFlag = (rxM(0).submatches(1) = "+") 
    MsgBox IDvalue & vbCrLf & optionFlag 
End If 
+0

謝謝!但是,我決定構建一個用戶表單來添加更多功能。 – 2014-08-31 09:53:14