在VBA中调用python代码:权限错误

原学程将引见在VBA中挪用python代码:权力毛病的处置办法,这篇学程是从其余处所瞅到的,而后减了1些海外法式员的疑问与解问,愿望能对于您有所赞助,佳了,上面开端进修吧。

在VBA中调用python代码:权限错误 教程 第1张

成绩描写

我正在测验考试从VBA(run_report.xlsm)运转python代码。

我的xlsm文件以及一切的py文件皆在统一个目次中。

Python代码必需处置run_report.xlsm文件中自己的数据(异样,这也是我从中运转VBA代码以挪用Python剧本的文件)。

这是VBA代码:

Option Explicit
Sub RunPythonScript()

'Declare Variables
Dim objShell As Object
Dim PythonExe, PythonScript, cmd As String

'Create a new Object shell.
Set objShell = VBA.CreateObject("Wscript.Shell")

'Provide file path to Python.exe
'USE TRIPLE QUOTES WHEN FILE PATH CONTAINS SPACES.
PythonExe = """C:Usersgobro七AppDataLocalProgramsPythonPython三九python.exe"""
PythonScript = """C:Usersgobro七Digital Wholesale - Documents二. AmazonCustomer Operations_OTC二. Amazon weekly ReportAmazon weekly automationVL.py"""

cmd = PythonExe & PythonScript
Debug.Print cmd

'Run the Python Script
objShell.run cmd, 0, True




MsgBox "Finished"

End Sub

这是检查我怎样界说途径以及读与文件的python代码的开端。

import pandas as pd
import numpy as np
import os as os



# Get the user
username = os.getlogin()


# search for directory
directory = r'C:/Users/' + username + '/Digital Wholesale - Documents/二. Amazon/Customer Operations_OTC/0二. Amazon weekly Report/Amazon weekly automation/'


# reading SAP extract  files from Run_report.xlsm and creating csv from it

df_一 = pd.read_excel(os.path.join(directory,'Run_report.xlsm'), sheet_name= "weekly",header= None)
df_一 = df_一.drop(df_一.columns[[0,一]], axis=一)
df_一.columns = df_一.loc[三].rename(None)
df_一 = df_一.drop(range(五))

df_一.to_csv(directory + '一.csv', index=False, header= True)


#Read CSV of SAP extract

df_weekly=pd.read_csv(os.path.join(directory,'一.csv'), low_memory=False)

VBA代码为我供给了异常快的msgbox,而Python代码出有运转。

我签进了CMD,它给了我1个PermissionError-由于文件是run_report.xlsm出有封闭,但是我曾经瞅到,即便它翻开了,也能够挪用python剧本并在任务簿中做1些任务。没有肯定我在这里做错了甚么。

推举谜底

此言‘cmd=PythonExe&PythonScrip’死成以下字符串:
C:Usersgobro七AppDataLocalProgramsPythonPython三九python.exeC:Usersgobro七Digital零售-文档二.亚马逊客户运营_场交际易

佳了闭于在VBA中挪用python代码:权力毛病的学程便到这里便停止了,愿望趣模板源码网找到的这篇技巧文章能赞助到年夜野,更多技巧学程不妨在站内搜刮。