使用Excel呼叫ABAP系統的函式

i042416發表於2018-05-10

效果:在excel裡建立一個按鈕,開發一些VB script,可以連線指定的ABAP系統並執行系統裡的ABAP function module。

使用Excel呼叫ABAP系統的函式

在這裡例子裡執行ABAP系統的函式TH_USER_LIST, 把當前系統登入的使用者取回來顯示在excel裡。

使用Excel呼叫ABAP系統的函式

該按鈕的點選響應函式實現程式碼:

Sub CommandButton1_Click()
    Set R3 = CreateObject("SAP.Functions")
    Set myConnction = R3.Connection
    myConnction.ApplicationServer = "ag3.xxx.sap.corp" myConnction.SystemNumber = 54 myConnction.Client = "001" myConnction.user = "WANGJER" myConnction.Password = "your password" If myConnction.Logon(0, True) <> True Then
      MsgBox "Logon failed" Exit Sub
    End If Dim callFunctionModule As Object
        
    Set callFunctionModule = R3.Add("TH_USER_LIST")
    callFunctionModule.Call If callFunctionModule.Exception <> "" Then
        MsgBox callFunctionModule.Exception End If If callFunctionModule.Call = True Then
        Dim result As Object
        Set result = callFunctionModule.tables("USRLIST")
        Dim aSheet As Worksheet
        Dim sheetCol As New Collection
        sheetCol.Add ActiveWorkbook.Sheets(1) For Each aSheet In sheetCol
            Dim i As Integer
            i = 1 For Each user In result.Rows
                
                Client = user(2)
                UserName = user(3)
                Terminal = user(5)
                IP = user(16)
                aSheet.Cells(i, 1) = Client
                aSheet.Cells(i, 2) = UserName
                aSheet.Cells(i, 3) = Terminal
                aSheet.Cells(i, 4) = IP
                
                i = i + 1 Next
        Next Else MsgBox " Call Failed! error: " End If 'log off
    myConnction.logoff
End Sub 

要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:

使用Excel呼叫ABAP系統的函式
使用Excel呼叫ABAP系統的函式

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2154279/,如需轉載,請註明出處,否則將追究法律責任。

相關文章