首页 > 解决方案 > VBA运行python脚本 - 权限错误

问题描述

所以,我正在尝试使用 VBA 运行 Python 代码。在这里阅读了很多类似的主题,但找不到答案。

每次我使用下面的代码时,CMD 都会通知权限错误 - 如下图。

Python 脚本在手动单击时完美运行。

对此事有任何想法吗?

VBA 代码

Dim obj As Object
Dim PythonExe As String
Dim Script As String

Set obj = VBA.CreateObject("Wscript.Shell")

PythonExe = """C:\Program Files (x86)"""

Script = "C:\Users\User\Documents\testesbulkpdf\firsttry.py"

obj.Run "cmd /k cd /d" & PythonExe & "&& " & "python" & " " & Script

蟒蛇代码

# pip instal PyPDF2

import os

from PyPDF2 import PdfFileMerger


source_dir = os.getcwd()

merger = PdfFileMerger()

for item in os.listdir(source_dir):
    if item.startswith('Doc.'):
        merger.merge(position=0, fileobj=item, bookmark=None, pages=None)
           
    if item.endswith('pdf'):
        merger.append(item)
    
merger.write('try.pdf')
merger.close()



错误 - 图像和文本 ( https://imgur.com/a/JmZdJeK )

Traceback (most recent call last):
  File "C:\Users\User\Documents\testesbulkpdf\firsttry.py", line 19, in <module>
    merger.write('try.pdf')
  File "C:\Users\User\AppData\Roaming\Python\Python38\site-packages\PyPDF2\merger.py", line 214, in write
    fileobj = file(fileobj, 'wb')
PermissionError: [Errno 13] Permission denied: 'try.pdf'

标签: pythonexcelvba

解决方案


推荐阅读