我有一个代码,要求使用InputBox
在1-3之间输入,然后根据给出的输入运行代码。我遇到的问题是我不再需要InputBox
,因为我打算做的工作只使用一个输入,即3.我试图移除输入框并只插入3然后然后代码什么都不做。然后我尝试在框中插入一个默认值,但它仍然出现,需要我点击输入,这是我想避免的。请问我应该怎么解决这个问题。
我的代码
Function GetTypeFile() As Integer
Dim strInput As String, strMsg As String
Dim Default
choice = 0
While (choice < 1 Or choice > 3)
Default = "3"
strMsg = "Type in the kind of entities to create (1 for points, 2 for points and splines, 3 for points, splines and loft):"
strInput = InputBox(Prompt:=strMsg, _
Title:="User Info", Default:=3, XPos:=2000, YPos:=2000)
'Validation of the choice
choice = CInt(strInput)
If (choice < 1 Or choice > 3) Then
MsgBox "Invalid value: must be 1, 2 or 3"
End If
Wend
GetTypeFile = choice
End Function
答案 0 :(得分:1)
您的函数将值返回到调用的位置,因此您可以使用:
Function GetTypeFile() As Integer
GetTypeFile = 3
End Function
或只是使用数字3
替换对该函数的任何调用。
所以而不是像:
Sub Test()
ThisWorkbook.SaveAs "MyFileName", GetTypeFile
End Sub
你有:
Sub Test()
ThisWorkbook.SaveAs "MyFileName", 3
End
答案 1 :(得分:0)
谢谢大家的回复。我只是通过将依赖于inputbox
中的值的变量设置为3而不是TypeDocument=GetTypeFile
直接设置为TypeDocument=3
来理解要做什么。我认为这是你们一直试图说的话。再次感谢你。