ADO操作excel问题

哈了 2012-02-06 12:22:17
  Dim Excel_Dsn As String

Dim Excel_Conn As New ADODB.Connection
Dim Excel_Adodc As New ADODB.Recordset
Dim mySql As String
Dim rs_str As String
Dim FilePath As String
FilePath = App.Path & "\aaa\" & Date & ".xls"
Excel_Dsn = "DRIVER={Microsoft Excel Driver (*.xls)};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=""" & FilePath & """;DBQ=" & FilePath
Excel_Conn.Open Excel_Dsn
mySql = "select * from [test$] where 网址='" & url & "'"
Excel_Adodc.Open mySql, Excel_Conn, adOpenKeyset, adLockPessimistic

以上代码在第一次打开VB工程时调试运行时会出现 ODBC驱动程序不支持的属性错误。改成
Excel_Adodc.Open mySql, Excel_Conn, 2, adLockPessimistic则是不支持的排序,有没有办法解决?
...全文
147 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
哈了 2012-02-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 worldy 的回复:]

参考这个:

’经实际测试,以下代码数据库和Excel之间互相导入导出,完全成功!
Private Sub Command1_Click()
'access导出到excel
Dim db As New ADODB.Connection
Dim sPath As String

db.Open "Provider=Microsoft.Jet.……
[/Quote]
我的代码和楼上的代码都能用,不过打开工程第一次调试运行时会报错而已,不管它后面再试就不会出现了,编译后也是能正常用.
哈了 2012-02-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 veron_04 的回复:]

VB code

im Excel_Dsn As String
Dim Excel_Conn As New ADODB.Connection
Dim Excel_Adodc As New ADODB.Recordset
Dim mySql As String
Dim rs_str As String
Dim FilePath As String
FilePath = App.Path &am……
[/Quote]
这个我一开始就是用这个串的,会出现不支持的排序错误.msdn上说是因为SP3的原因,我看了下我的VB是sp6,很郁闷
贝隆 2012-02-06
  • 打赏
  • 举报
回复

im Excel_Dsn As String
Dim Excel_Conn As New ADODB.Connection
Dim Excel_Adodc As New ADODB.Recordset
Dim mySql As String
Dim rs_str As String
Dim FilePath As String
FilePath = App.Path & "\aaa\" & Date & ".xls"

Excel_Dsn = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & FilePath & ";Extended Properties='Excel 8.0;HDR=Yes'"
Excel_Conn.Open Excel_Dsn
mySql = "select * from [test$] where 网址='" & url & "'"
Excel_Adodc.Open mySql, Excel_Conn, adOpenKeyset, adLockPessimistic


worldy 2012-02-06
  • 打赏
  • 举报
回复
参考这个:

’经实际测试,以下代码数据库和Excel之间互相导入导出,完全成功!
Private Sub Command1_Click()
'access导出到excel
Dim db As New ADODB.Connection
Dim sPath As String

db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\Test\db1.mdb Persist Security Info=False"

sPath = App.Path + "\backup.xls"
If Dir(sPath) <> "" Then
Kill sPath
Else

Call db.Execute("select * into Sheet1 In '" & sPath & "' 'excel 8.0;' from 表1")
MsgBox "导出成功", vbOKOnly, "提示"
End If

db.Close
Set db = Nothing
End Sub

Private Sub Command2_Click()
'从excel导出到 access
Dim db As New ADODB.Connection
Dim sPath As String

db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Temp\Test\db1.mdb;Persist Security Info=False"

sPath = App.Path + "\backup.xls"
Call db.Execute("select * into Table4 From [Sheet1$] In '" & sPath & "' 'excel 8.0;'")

db.Close
Set db = Nothing
End Sub
  • 打赏
  • 举报
回复
向高手学习了!

7,785

社区成员

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

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