2012-03-27 66 views
0

我有一個需要清除的查詢。我使用Excel 2003.該工作表包含12列。我需要將數據從excel導出到SAP。在導出之前,我需要檢查記錄是否存在,如果存在,則刪除並插入。使用VBA在EXCEL中填充BAPI導入表格參數

我有兩個BAPI爲這一個是導入表,它需要填寫參數,填充此表後BAPI搜索相關記錄。

該列表將顯示在表中。我需要使用excel中的值搜索該表,然後將一個字段值導入到excel中。

我寫這段代碼,但它不工作給BAPI Error 0

Public Function Import_Order() As Boolean 

    Dim oBAPIGetOrder As Object 
    Dim oBAPIVariant1 As Object 
    Dim oBAPIVariant2 As Object 
    Dim oBAPIVariant3 As Object 
    Dim oBAPIImpOrder As Variant 
    Dim oBAPIRet As Boolean 
    Dim oDoNothing As Variant 
    gBAPIPlanOrder = 0 

    Set oBAPIGetPlOrder = sBAPIControl.Add("PLANED_GET_DET_LIST") 'BAPI 
    Set oBAPIVariant1 = oBAPIGetPlOrder.exports.Item("SELECTIONCRITERIA")  'Internal table 
    Set oBAPIVariant2 = oBAPIGetPlOrder.Tables.Item("DETAILEDLIST")   'Table 

    oBAPIVariant1.Value("MATERIAL") = eMaterial 
    oBAPIVariant1.Value("PLANT") = ePlnPlant 

    lBAPIRet = oBAPIGetPlOrder.call 
    If lBAPIRet Then 
     'oBAPIImpOrder = oBAPIGetPlOrder.imports.Item("PLANNEDORDER_NUM") 
     a = oBAPIVariant2.Rows.Count 
     oBAPIImpOrder = oBAPIVariant2.Value("PLANNEDORDER_NUM") 
     Import_PlannedOrder = True 
    Else 
     oBAPIImpOrder = 0 
     Import_PlannedOrder = False 
    End If 

End Function 

在此先感謝您的幫助......

+0

我從來沒有使用API​​(以前從來沒有聽說過),但是我從網絡上的研究中學到的是BAPI錯誤#:0可能由於許多原因而發生。嘗試搜索谷歌'bapi錯誤0'也是你嘗試調試然後代碼,並看到哪一行失敗? – 2012-03-27 20:57:14

+0

我想從VBA(Excel)中調用BAPI「PLANED_GET_DET_LIST」。下面的一部分編碼。問題出在線 設置oBAPIVariant1 = oBAPIGetPlOrder.exports.Item(「SELECTIONCRITERIA」)。 BAPI的輸入參數「SELECTIONCRITERIA」是一個結構。當宏運行在上面的編碼行時,我會看到一個錯誤= 0(遊標在變量「oBAPIVariant1」上)。如果導入參數不是結構,而是數據元素,它將運行。 請告訴我,如果我在編碼 – user1049518 2012-03-28 07:20:14

回答

-1

請撥打電話功能的語句 lBAPIRet = oBAPIGetPlOrder.call 後直接出口的語句和之前的表和importstatements

+0

中犯了一個錯誤...以及應該做什麼好? – vwegert 2013-01-09 21:03:49

相關問題