如何在Excel中使用VB宏连接SAP系统

  • 准备工作

Excel连接SAP的时候需要使用RFC library, 首先从Service Marketing Place下载RFC SDK.

具体路径如下:

http://service.sap.com/swdc

SAP Software Download Center
Support Packages and Patches
Browse our Download Catalog

Additional Components

Additional Components

SAP RFC SDK

SAP RFC SDK 7.20

下载之后解压缩SAR文件。本例中解压缩到了C:\RFCSDK

  • 创建Excel文件编写宏代码

打开Excel新建一个Workbook,然后打开VB编辑器(Alt+F11),在引用中添加RFC library文件。

然后使用如下代码连接到SAP系统:

Set myConnction = R3.Connection

myConnction.ApplicationServer = <HostName>

myConnction.SystemNumber = <InstanceNumber>

myConnction.Client = '<Client>'

myConnction.user = '<Username>'

myConnction.Password = '<Password>'

myConnction.Logon(0, True)

进行Funtion module调用:

Dim callFunctionModule As Object

Set callFunctionModule = R3.Add('<FunctionModule>')

callFunctionModule.Call

获取返回结果:

Set result = callFunctionModule.imports('<Parameter>')

处理结束之后注销登录:

myConnction.logoff

如果需要SNC连接的话,可以通过下面代码进行设置:

myConnction.SNC = True

myConnction.SNCName = '<SNCNameOfSAPSystem>'

myConnction.SNCQuality = 3

通过以上代码就可以实现VB宏调用SAP系统的Function module,进行数据处理了。

附件是一个简单例子,调用TH_USER_LIST取得当前登录到SAP系统的用户输出到Excel文件。

(0)

相关推荐