我需要登录网站并执行更多操作,例如更新或抓取数据。但是,我想将所有内容汇总成一个并使用它来根据给定的信息访问其他情况,而不是使用一些登录代码。例如,我有一个调用的登录代码:
Public Function LoginPhase(FunctionKey, KeyX)
...
codes
...
Call FunctionKey(KeyX)
DoEvents
...
End Function
并有一个调用的按钮:
Sub UpdateAcc_Click()
Call LoginPhase(UpdateFunction, 132)
End Sub
和另一个调用的按钮:
Sub UpdateAcc_Click()
Call LoginPhase(DataFunction, 132)
End Sub
当然还有那些名为UpdateFunction
和DataFunction
的功能代码。
如何让它以我想要的方式运作?
答案 0 :(得分:2)
你的意思是这样吗?
Public Function LoginPhase(FunctionKey, KeyX)
Select Case FunctionKey
Case "UpdateFunction"
UpdateFunction KeyX
Case "DataFunction"
DataFunction KeyX
Case Else
MsgBox "FunctionKey """ & FunctionKey & """ is unknown"
End Select
End Function
答案 1 :(得分:0)
如果在类模块中定义所有函数(即ThisWorkbook),则可以使用CallByName调用它们,如图所示here(链接是关于VB6的,但它与vba相同)。
Public Function LoginPhase(FunctionKey, KeyX)
...
codes
...
CallByName ThisWorkbook, FunctionKey, vbMethod, KeyX
DoEvents
...
End Function