我正在使用xlwings为Excel创建Python UDF。因此,我创建了一个新的Excel文件,进行了整个设置,UDF向我返回了正确的结果。之后,我保存了Excel文件,将其关闭,重新打开,然后重新导入该函数以再次使用。但这是UDF停止工作的时候。它没有给我任何错误消息。相反,尽管我没有做任何更改,但它只是开始返回错误的结果。更具体地说,即使文件夹Docs_Received已保存了多个pdf文件,UDF也会通知number_of_files为0。我查找了以前的问题,进行了多次测试,并仔细检查了文件设置,但我仍然不知道。重新打开文件后,有人知道如何使UDF正常工作吗?
def FILE_COUNT():
folder_name = "Docs_Received"
number_of_files = 0
for file in glob.glob(os.path.join(os.path.abspath(os.path.curdir),folder_name,"[!~]*.pdf")):
number_of_files += 1
return number_of_files
答案 0 :(得分:0)
保存并重新打开后,您的代码对我有用。
您不必重新导入UDF。您应该另存为启用了宏的文件(.xlsm或.xlsb)。