救命!!用db连excel的语句救命!!

lddp034 2008-02-29 05:58:15
急啊,弄了一个下午也没弄出来
小弟只有求助各位高手大哥了
Option Explicit
Dim Rs As ADODB.Recordset
Dim conn1 As ADODB.Connection
'保存文档
Private Sub Command1_Click()
' 设置“CancelError”为 True
dlgFileOpen.CancelError = True
' On Error GoTo ErrHandler
Dim mFileName As String
dlgFileOpen.Filter = "文件(*.xls)|*.xls"
dlgFileOpen.ShowOpen
If dlgFileOpen.FileName = "" Then Exit Sub
mFileName = Trim(dlgFileOpen.FileName)
Call InSert(mFileName)
'ErrHandler:
' ' 用户按了“取消”按钮
' Exit Sub
End Sub


'保存文件到数据库中
Private Sub InSert(cFilePath As String)
Set conn1 = New ADODB.Connection
Set conn = New ADODB.Connection
Set Rs = New ADODB.Recordset
Dim cFileName As String '要保存的文档名称
Dim Sql As String
Dim SqlInsert As String

Sql = "Select * From Sheet1$" 'Sheet1$必须是固定的
Set conn1 = New ADODB.Connection
conn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=false;Data Source='" + cFileName + "';Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'"
conn1.CursorLocation = adUseClient
conn1.Open
Set Rs = conn1.Execute(Sql)
If Rs.EOF And Rs.BOF Then
MsgBox "选择的Excel表中没有数据!", vbOKOnly + vbExclamation, "系统提示"
Exit Sub
Else
conn.Open publicstr, 1, 3
Do While Not Rs.EOF
'此处插入的值根据实际数据库结构进行调整
SqlInsert = "Insert Into cellinfo (CellName,Area1,Area2) Values ('" & Trim(Rs("客户姓名")) & "','" & Trim(Rs("原面积")) & "','" & Trim(Rs("测绘面积")) & "')"
conn.Execute (SqlInsert) '插入Excel表格内容
Rs.MoveNext
Loop
MsgBox "导入数据成功!", vbOKOnly + vbExclamation, "系统提示"
End If
Rs.Close
conn1.Close
conn.Close
Set Rs = Nothing
End Sub

错误提示:
指定的初始化字符串不符合oledb规定

在线等!!!!!!!!!!
...全文
95 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2008-03-03
  • 打赏
  • 举报
回复
conn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & cFileName & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
lddp034 2008-03-03
  • 打赏
  • 举报
回复
刚试过了
不对
提示:找不到可安装的ism
把后面的双引号改成单引号这个错误就跳过了,可还错
提示:初始化不符合规则
conn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & cFileName & ";Properties='Excel 8.0;HDR=Yes;IMEX=1;'"这句是我改的
真看不出哪错了!!!
lddp034 2008-03-03
  • 打赏
  • 举报
回复
我在vb6.0上开发,是这样吗?
我试一试
of123 2008-03-03
  • 打赏
  • 举报
回复
不对是什么意思?返回什么错误?
lddp034 2008-03-03
  • 打赏
  • 举报
回复
装了
lcsfxs 2008-03-03
  • 打赏
  • 举报
回复
装ACCESS97试试
lddp034 2008-03-03
  • 打赏
  • 举报
回复
先谢谢
很不幸,刚才我试了
还是不对
你遇到过类似的问题吗?
of123 2008-03-01
  • 打赏
  • 举报
回复
conn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & cFileName & ";Properties=""Excel 8.0;HDR=Yes;IMEX=1"""

1. 数据源不要加引号。
2. 扩展属性要用双引号。
lddp034 2008-03-01
  • 打赏
  • 举报
回复
高手阿!!!!!!
lddp034 2008-02-29
  • 打赏
  • 举报
回复
我先回去了
明天继续这个问题的研究!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
lddp034 2008-02-29
  • 打赏
  • 举报
回复
后面必须是单引号
好像不是这儿的错,不过还是谢谢你啊 
lddp034 2008-02-29
  • 打赏
  • 举报
回复
不行啊!!]
找不到可安装的ism!!!!!!!
lddp034 2008-02-29
  • 打赏
  • 举报
回复
谢谢阿
我试一下
lddp034 2008-02-29
  • 打赏
  • 举报
回复
怎么没人理我/阿
饮水需思源 2008-02-29
  • 打赏
  • 举报
回复
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & cfilename & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧