EXCEL技术VBA一键获取SAP系统数据

您所在的位置:网站首页 如何安装启用宏文件系统 EXCEL技术VBA一键获取SAP系统数据

EXCEL技术VBA一键获取SAP系统数据

2024-07-13 16:52| 来源: 网络整理| 查看: 265

1.第一步 在SAP系统建立一个可远程调用的函数RFC 在这里插入图片描述

2.第二步 就是在EXCEL里面的操作了 找到开发工具 点击Visual Basic (切记EXCEL要启用宏 在信任中心里面) 在这里插入图片描述 3.第三步 在EXCEL里面写代码 格式差不多大同小异

Sub 点击刷新() '设置登录信息 Set R3 = CreateObject("SAP.Functions") R3.Connection.System = "DEV" R3.Connection.ApplicationServer = "172.16.1.24" R3.Connection.Client = "330" R3.Connection.SystemNumber = "10" R3.Connection.User = "XIAOT" R3.Connection.Password = "xiao435435" R3.Connection.Language = "ZH" '有中文汉字或中文字符的话,需要设置代码页,否则可能出现乱码 R3.Connection.Codepage = "8400" If R3.Connection.logon(0, False) True Then Exit Sub Else '调用RFC,处理输入、表、输出等参数 '添加RFC名称 Set MyFunc = R3.Add("ZFMPP_PENDING") '设置输入参数 Set oParam1 = MyFunc.exports("WERKS") 'oParam1.Value = "1001" '执行远程调用 Result = MyFunc.CALL If Result = True Then '设置table参数 Set pending = MyFunc.Tables("IT_RETURN") '设置返回参数 Set oParam2 = MyFunc.exports("IT_RETURN") Else MsgBox MyFunc.EXCEPTION R3.Connection.LOGOFF Exit Sub End If '注销登录 R3.Connection.LOGOFF '固定列名称 Cells(2, 3) = "工厂" 。。。。 '使用循环处理table参数 For i = 3 To pending.RowCount Set Row = pending.Rows(i) Cells(i, 3) = Row.Value("WERKS") 。。。。 Next End If End Sub

这里注意一下 :本人在研究过程中,发现64位EXCEL与SAP系统不兼容。还未找到解决方案,望能得到有志之士的帮助! ———————————————— 版权声明:本文为CSDN博主「Qunending」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/Qunending/article/details/104480990



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3