【发布时间】:2021-09-09 21:52:13
【问题描述】:
我正在尝试将我 PC 上另一个 Excel 工作簿中的数据导入 SQL Server。我尝试使用此代码,但它不起作用:
Sub insertion()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sConnString As String
Dim rsstring As String
Dim m, nrows As Integer
Dim loRH As Excel.ListObject
Workbooks("test-vba.xls").Activate
*connection*
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open sConnString
MsgBox "Start"
Set loRH = wkb.ListObjects(1)
loRH.ListColumns(1).DataBodyRange.Select
MsgBox "Start"
nrows = WorksheetFunction.CountA(Selection)
For m = 0 To nrows - 1
rsstring = "insert into MPN_Materials values(MPN Material, Material
description, Int. material no., MPN, Manufact., Matl Group, Material
Description, Last Chg., BUn) values" _
& "("loRH.DataBodyRange.Cells(m + 1, 1) & "',
& loRH.DataBodyRange.Cells(m + 1, 2) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 3) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 4) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 5) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 6) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 7) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 8) & ", " _
& loRH.DataBodyRange.Cells(m + 1, 9) & "); "
【问题讨论】:
-
欢迎来到 Stack Overflow。你得到什么错误?请更新您的问题。
-
错误为:“Workbooks("test-vba.xls").Activate”行的脚本超出范围
-
请更新您的问题,不要发表评论。谢谢。
标签: vba sql-server-2008