我正在使用下面的代码刷新我的工作簿中的Essbase提要,它工作得很好,但是,唯一的缺点是我每次刷新essbase时都需要输入密码,因为我们的Essbase系统是高度安全的。
我的问题是,是否可以将密码合并到宏中,这样我就不必在每次刷新提要时都输入密码。解决这个问题还将使我能够通过Python自动执行整个过程,并安排一个作业。
Private Declare PtrSafe Function HypMenuVRefreshAll Lib "HsAddin" () As Long
Sub RefreshHFM()
Call HypMenuVRefreshAll
End Sub能帮上忙吗?
谢谢。
发布于 2017-10-17 01:08:21
HypMenuVRefreshAll命令基本上等同于单击刷新按钮,当然它会提示您输入密码,因为如果您自己单击菜单,就会发生这样的情况。但是,还有用于其他菜单项的其他命令,以及可用于连接的实际API。您可以使用以下代码进行连接:
Private Sub cmdConnect_Click()
Dim lReturn As Long
Dim sMessage As String
''' try to connect
lReturn = EssVConnect("sheet name", "admin", "password", "epmvirt11124", "sample", "basic")
''' show a message if necessary
If lReturn <> 0 Then
sMessage = EssVGetLastErrorMessage()
MsgBox "EssVConnect status = " & lReturn & ". Error Message = " & sMessage
End If
End Sub我从一个连接到特定立方体的按钮借用了这段代码。确保更新用户名、密码、服务器名称、应用程序和多维数据集以匹配您的环境。
另请注意,这是旧的Essbase VB API的一部分,可与“经典”Excel加载项一起使用。Smart View的代码是不同的,它附带了完全不同的VB API。
https://stackoverflow.com/questions/46750876
复制相似问题