【发布时间】:2021-11-05 13:29:57
【问题描述】:
我正在通过 VBA 脚本调用 python 脚本。在我尝试调用导入少数库的脚本之前,这将按预期工作。当我以这种方式调用 python 时,某些库似乎无法加载,而其他库则不然。 (Jupyter Lab 和从命令提示符调用 .py 文件都可以无缝工作。) 我得到的错误信息是“DLL load failed while importing qhull: The specified module could not be found.”
某些模块似乎正在加载,而其他模块则导致问题。 SciPy 和 sklearn 是给我带来问题的。我应该如何解决此错误?会不会和shell的使用有关?
这是我用来执行 .py 脚本的 VBA 代码
Sub xls2py()
Dim objShell As Object
Dim PythonExe, PythonScript As String
ChDir ActiveWorkbook.Path
Set objShell = VBA.CreateObject("Wscript.Shell")
PythonExe = """C:\Users\Peter_K\Anaconda3\python.exe"""
PythonScript = "C:\Users\Peter_K\Desktop\Untitled1.py"
objShell.Run PythonExe & PythonScript
Set objShell = Nothing
End Sub
另外,这里是负责导入库的python代码部分
import csv
import os
import math
import numpy as np
import pandas as pd
from scipy.optimize import minimize
import matplotlib.pyplot as plt
from sklearn.metrics import r2_score
from openpyxl import load_workbook
from datetime import datetime
import time as tm
【问题讨论】: