【问题标题】:Connect Excel to Access Form via VBA通过 VBA 将 Excel 连接到 Access 表单
【发布时间】:2022-08-03 20:17:26
【问题描述】:

我想将我的 Excel 连接到我的 Access DB。 我想将表单中的数据提取到 Excel 中。

 Sub GetDataFromDB()
    
    Dim conn As Object
    Dim DBPATH, PRVD, connString, query As String
    
    DBPATH = \"....\"
    PRVD = \"Microsoft.ace.OLEDB.12.0;\"
    
    connString = \"Provider=\" & PRVD & \"Data Source=\" & DBPATH
    Set conn = CreateObject(\"ADODB.Connection\")
    conn.Open connString
    
    DoCmd.OpenForm Forms![frm_name], acFormDS, \"\", \"\", , acNormal
    (Do Something)
End Sub

现在我收到一个错误 424,表明需要一个对象,但我不知道如何访问我的数据库中的特定表单。

有人能帮助我吗?

此致

  • 我假设这是您想在 Excel 中使用的代码。在这种情况下,您无法使用DoCmd.OpenForm 在 Excel 中打开 Access 表单。
  • 是的,您必须首先使用自动化打开访问,然后打开表单。

标签: excel vba forms ms-access connect


【解决方案1】:

通常,您从表或查询中获取数据。也许你应该更好地解释你想要完成的事情。直接从表单中获取数据听起来不合逻辑。如果您想打开访问表单,请尝试;

Ps,Dim 声明不正确,Dim x 为字符串,y 为字符串,否则它们将是变体。

公共子显示表单(conPath 作为字符串)

将 objAccess 作为 Access.Application 调暗 '检查这是您 PC 上的路径 'Northwind.mdb,随 Access 一起提供。 '常量 conPATH = "C:\Users\Myname\documents\PrintMe.accdb" '创建 Access 应用程序对象的实例。 设置 objAccess = CreateObject("Access.Application") '访问并显示应用程序窗口。 objAccess.OpenCurrentDatabase conPath objAccess.Visible = True

    'Open the Employees form.
     'objAccess.DoCmd.OpenForm "Cust List"
     ' Maximize other Access window and quit current application.

objAccess.DoCmd.RunCommand acCmdAppMaximize
Application.DoCmd.RunCommand acCmdAppMinimize

结束子

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-18
    • 2012-10-25
    • 2018-09-09
    • 2010-12-04
    • 1970-01-01
    • 2015-08-19
    • 2017-11-14
    • 1970-01-01
    相关资源
    最近更新 更多