本人小菜啊,实在是找不到门路才来求助。
     以下是模块里的代码。为什么我登陆窗口里的不能调用呢?总报错,
     Public Function ExeSQL(ByVal Sql As String) As ADODB.Recordset
    On Error GoTo ErrHandler:
    Dim Connstr As String
    Dim CN As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim strArray() As String
    Dim DataPath As String
    
    Set CN = New ADODB.Connection
    Set rs = New ADODB.Recordset
  
    DataPath = "PC281453 \ Users \ Data \ Data.mdb"
    Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataPath + ";Persist Security Info=False"
    strArray = Split(Sql)
    CN.Open Connstr·
为什么Data Source=" & App.Path &就可以。问题很菜,但是不得要领啊。
    
 

解决方案 »

  1.   

    在 DataPath 中放从盘符开始的完整路径试试。另外,字符串连接符最好用 & 而不是 + 号。
      

  2.   

    如果你的数据库就在 .exe 所在文件夹下,不妨DataPath = App.Path & "\ Data.mdb"如果你引用的是 .exe 所在文件夹下的子文件夹路径,可以DataPath = App.Path & "\PC281453 \ Users \ Data \ Data.mdb"
      

  3.   


    我把数据库放在局域网共享文件夹里了。
    起初数据库就在 .exe 所在文件夹下
    用DataPath = App.Path 应该是没问题的,
    用这个路径后"\PC281453 \ Users \ Data \ Data.mdb"开始报错。