Python 获取调用脚本的工作簿的位置

Python 获取调用脚本的工作簿的位置,python,python-3.x,excel,xlwings,vba,Python,Python 3.x,Excel,Xlwings,Vba,我正在尝试使用 Sub MacrosTrigger() RunPython ("import MacrosTrigger") End Sub MacrosTrigger.py包含以下示例代码 import os import pandas as pd import glob import matplotlib.pyplot as plt import matplotlib import xlwings as xw matplotlib.rcParams['figure.figsize'

我正在尝试使用

Sub MacrosTrigger()
    RunPython ("import MacrosTrigger")
End Sub
MacrosTrigger.py包含以下示例代码

import os
import pandas as pd
import glob
import matplotlib.pyplot as plt
import matplotlib
import xlwings as xw
matplotlib.rcParams['figure.figsize'] = (18.0, 5.0)
wb = xw.Book.caller()
cwd = os.getcwd()
wb.sheets[0].range('A1').value = cwd
os.chdir('C:\\Users\\HegdeP\\Desktop\\Python Data Analysis\\PST')

getcwd()返回Python解释器的位置。出于自动化目的,我希望能够返回调用脚本的工作簿的位置。i、 e.wb的位置。

可以通过
fullname
属性获取
xlwings.Book
的绝对路径,因此在您的情况下
wb.fullname

你在评论中说你只是指foldername。在这种情况下,使用

foldername = os.path.split(wb.fullname)[0]

查看文档中的许多其他有用的函数来处理文件名。

关于
wb.fullname
?@Jeronimo,这就是文件本身。没有文件名我怎么能得到地址?不知道你说的“地址”是什么意思。你能举个例子吗?
wb.fullname
会给我
C:\Users\HegdeP\Desktop\Python Data Analysis\OM646\u Bio Analysis\0172\u 1190790270172\xlwings trigger.xlsx
。我只想
C:\Users\HegdeP\Desktop\Python Data Analysis\OM646\u Bio Analysis\0172\u 1190790270172
作为
os.chdir