【发布时间】:2012-01-19 09:41:40
【问题描述】:
我有一个包含多个工作表的 Excel 工作簿。第一个工作表有用户的登录信息,并且有一个按钮可以上传AS400中不同表对应的所有工作表。工作表名称与 AS400 表名称相同。
上传按钮的代码如下:
代码:
Dim objConn As New ADODB.Connection, objRs As New ADODB.Recordset
Dim WS_Count As Integer
Dim I As Integer
Dim WS_Name As String
objConn.ConnectionString = "DSN=MYAS400;DRIVER=Client Access ODBC Driver (32-bit); " & _
"SYSTEM = <ip>; UID = <uname>;PWD = <pwd>"
objConn.Open
WS_Count = ActiveWorkbook.Worksheets.Count
For I = 2 To WS_Count
WS_Name = ActiveWorkbook.Worksheets(I).Name
objConn.Execute "DELETE FROM MYAS400LIB. " & WS_Name & ""
objConn.Execute "INSERT INTO MYAS400LIB. " & WS_Name & " SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=" & ThisWorkbook.FullName & ";HDR=YES;IMEX=1', 'SELECT * FROM [" & WS_Name & "$]')"
Next I
objConn.Close
Set objConn = Nothing
End Sub
如何将每个工作表(带有列标题)插入 AS400?
【问题讨论】:
标签: vba excel ibm-midrange