2017-10-15 80 views
0

我正在使用下面的代碼在我的工作簿中刷新Essbase提要,但它運行良好,但唯一的缺點是我每次刷新essbase時都需要輸入密碼爲我們的Essbase系統具有高度安全性。如何刷新Excel智能使用宏查看Essbase

我的問題是,是否可以將密碼合併到宏中,以便每次刷新提要時都不必輸入密碼。 解決這個問題也將使我能夠通過Python自動完成整個過程並安排一項工作。

Private Declare PtrSafe Function HypMenuVRefreshAll Lib "HsAddin"() As Long 


Sub RefreshHFM() 

Call HypMenuVRefreshAll 

End Sub 

任何幫助。

謝謝。

回答

0

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加載項配合使用。智能視圖的代碼不同,它帶有完全不同的VB API。

+0

我剛剛意識到您的問題實際上是關於Smart View,而我的答案是針對經典加載項。所以這可能不適合你。但是您應該能夠使用等效的智能視圖功能'HypConnect(「SheetName」,「用戶名」,「密碼」,「連接」)' – jwj