|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 AntoniaQiao 于 2015-8-6 09:43 编辑
我想将excel中的数据批量导入数据库,确总提示下标越界,求大神帮忙指导
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim i As Integer, sht As Worksheet 'i为整数变量;sht 为excel工作表对象变量,指向某一工作表
Dim cn As New ADODB.Connection '定义数据链接对象 ,保存连接数据库信息;请先添加ADO引用
Dim strCn As String, strSQL As String '字符串变量
strCn = "Provider=sqloledb;Server=QIAOCY;Database=business;Uid=sa;Pwd=sa;" '定义数据库连接字符串
cn.Open strCn '与数据库建立连接,如果成功,返回连接
Set sht = ThisWorkbook.Worksheets("sheet12") '把sht指向当前工作簿的sheet12工作表
For i = 5 To Range("A1048576").End(xlUp).Row()
strSQL = " insert into customerlist(cus_name,cus_company,cus_dep,cus_position,cus_phone1,cus_phone2,cus_phone3,cus_mail) values ('" & sht.Cells(i, 1) & "','" & sht.Cells(i, 2) & "','" & sht.Cells(i, 3) & "','" & sht.Cells(i, 4) & "','" & sht.Cells(i, 5) & "','" & sht.Cells(i, 6) & "','" & sht.Cells(i, 7) & "','" & sht.Cells(i, 8) & "') "
cn.Execute strSQL
Next i
cn.Close
Application.ScreenUpdating = True
Unload UserForm1
Exit Sub
End Sub
我将Sheet12重新命名为“批量导入客户联系人”所以要将Set sht = ThisWorkbook.Worksheets("sheet12") '把sht指向当前工作簿的sheet12工作表 改成Set sht = ThisWorkbook.Worksheets("批量导入客户联系人") '把sht指向当前工作簿的sheet12工作表
这个小错误我改了查了好久,希望对像我这样的初学者有帮助
|
|