2015-10-12 40 views
0

我需要登录到一个网站,并做许多事情,如更新或刮擦数据。但是,我不想有几个登录代码,而是将所有信息汇总成一个,并根据所提供的信息使用它来访问其他情况。例如,我有它调用一个登录码:调用多种其他功能的函数

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 

和当然还有功能码称为UpdateFunctionDataFunction

如何让它按我打算的方式运作?

回答

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 
0

如果你定义一个类模块(即的ThisWorkbook)所有的功能,你可以使用CallByName来调用它们如图所示here(链接约为VB6,但它是用VBA相同)。

Public Function LoginPhase(FunctionKey, KeyX) 
... 
codes 
... 

CallByName ThisWorkbook, FunctionKey, vbMethod, KeyX 
DoEvents 

... 
End Function