
[英]Getting the entire path where a .mdb file is present by providing the database(.mdb) name in excel-vba
[英]Weird situation, define a file path connecting to Access .accdb database in Excel VBA using ADO, however it tells me couldn't find .mdb file
我正在使用ADO连接在Excel VBA中编写代码以打开Access .accdb数据库。 我将文件路径定义为波纹管,但是在运行代码时,错误消息告诉我“找不到文件C:\\ Users \\ sevenice \\ Documents \\ EM Database.mdb”。 太奇怪了,我从来没有在.mdb文件范围内定义该文件路径。
但是,当我将accdb文件另存为mdb文件,然后将mdb文件放置在Documents文件夹下时,代码起作用了! 但是我不知道为什么。
我的代码有什么问题吗? 还是Access 2007中存在一些默认文件路径? 我的代码在Excel 2007中。
谢谢,冰
作为新的ADODB.Connection的昏暗cnn作为新的ADODB.Recordset的昏暗
昏暗的Dbfilepath作为字符串
Dbfilepath = "C:\Users\sevenice\Desktop\EM Database.accdb"
Set cnn = New ADODB.Connection
cnn.Open "Provider= Microsoft.ACE.OLEDB.12.0;" & " Data Source=" & Dbfilepath & ";" & "Persist Security Info =False;"
Set rst = New ADODB.Recordset
rst.ActiveConnection = cnn
您是否在SQL文本中引用了数据库名称(已从代码中删除了数据库名称)?
例如
SELECT [g/gtop] FROM [EM Database].[N (t) Data]
AFAIK此语法将尝试在当前目录中查找数据库EM Database.mdb
。 我猜它使用.mdb与旧代码兼容(或者这是一个bug!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.