【发布时间】:2018-08-22 22:38:15
【问题描述】:
因此,我的任务是通过从电子表格中提取值、将它们插入 SAP 表单并从 SAP 事务中获取值来将 Excel 与 SAP 连接起来。
我假设我只需要为此运行 VBA 文件。当我运行代码时,我的电子表格已打开并且我已登录到 SAP。
错误是:
变量未定义
代码:
If Not IsObject(application) Then
Set SapGuiAuto = GetObject("SAPGUI")
Set application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(connection) Then
Set connection = application.Children(0)
End If
If Not IsObject(session) Then
Set session = connection.Children(0)
End If
If IsObject(WScript) Then
WScript.ConnectObject session, "on"
WScript.ConnectObject application, "on"
End If
session.findById("wnd[0]").maximize
Dim objExcel as Object
Dim objSheet as Object
Set objExcel = GetObject(, "Excel.Application")
Set objSheet = objExcel.ActiveWorkbook.ActiveSheet
COL1 = Trim(CStr(objSheet.Range("A1").Value)) 'Column1
session.findById("wnd[0]/tbar[0]/okcd").text = "/nCS15"
session.findById("wnd[0]/tbar[0]/btn[0]").press
session.findById("wnd[0]/usr/ctxtRC29L-MATNR").text = COL1
session.findById("wnd[0]/usr/ctxtRC29L-MATNR").setFocus
【问题讨论】:
-
你能提供更多关于什么不起作用的细节吗?它是错误的,还是只是不符合您的预期?
-
欢迎。请记住,我们无法运行您的代码或查看您的屏幕。您的问题没有解释实际问题。你的代码会抛出错误吗?什么错误和什么线?它的行为不符合预期吗?解释会发生什么。请不要写“什么都没有发生”或“它不起作用”。
-
当您说 VBScript 时,您的意思是从 .vbs 文件还是从 Excel 内部的 VBA 过程运行它?