【问题标题】:is python usable in MS Access without linking to the databasepython 可以在 MS Access 中使用而无需链接到数据库吗
【发布时间】:2020-12-01 07:55:58
【问题描述】:

这里有一个我正在尝试解决的问题。

我想知道是否必须将 python 连接到我的 Access 数据库才能运行 python 文件。

基本上,我想在 Access 中单击一个按钮并让它触发一个 python 代码来打开一个文件对话框。

我还希望以下工作:

情况 1:可以将路径复制到 Access 表单中
情况2:可以打开已经链接到访问的合并

那么,我可以在不连接我的 python 代码访问的情况下做类似的事情吗?

【问题讨论】:

  • 为什么需要调用 Python 代码来执行可以使用 VBA 代码完成的操作?什么是“合并”?

标签: python ms-access odbc database-connection pyodbc


【解决方案1】:

如果 python 代码不需要从 Access 表中提取信息,那么您不需要脚本通过 pyodbc(或其他任何东西)连接到 Access 数据库。给定一个测试脚本...

# C:\__tmp\get_path.py
print(r"C:\Users\Gord\Desktop\foo.pdf")

...下面的 VBA 代码...

Sub getPathFromPython()
    Const pyInterpreter = "C:\Users\Gord\AppData\Local\Programs\Python\Python38-32\python.exe"
    Const pyScript = "C:\__tmp\get_path.py"
    
    Dim objShell As New WshShell, objExec As Object
    Set objExec = objShell.Exec(pythonPath & " " & pyScript)
    Dim stdout As String
    stdout = objExec.stdout.ReadAll

    Debug.Print "Python code returned:" & vbCrLf & stdout
End Sub

...在 VBA 编辑器的即时窗口中打印:

Python code returned:
C:\Users\Gord\Desktop\foo.pdf

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    • 2014-08-17
    • 2017-04-30
    相关资源
    最近更新 更多