簡體   English   中英

在已經打開的Excel文件中從python調用vba函數

[英]call vba function from python in already open excel file

我正在嘗試從Python運行vba宏,但是具有宏的excel文件已經打開。 因此,我不想作為另一個實例再次打開它。

我嘗試過win32com代碼-但是它會重新打開同一文件的另一個實例,並在該實例中進行更改,並要求我另存為第二個excel文件。 但是我想在已經打開的文件中調用宏。 並在調用該宏后將excel文件打開。 這是文件所在的路徑-它是一個私有共享驅動器

\\ nplofnp0001a \\ gtonnnfs10912400 \\ CPM其他\\ PL估算\\ PL估算表\\ DAILY PL ESTIMATE W NRPD RV2 v6_YK_v2.xlsm

folder_xlfile = '\\\\nplofnp0001a\gtonnnfs10912400\CPM Other\PL Estimate\PL Estimate Sheets'
xlfile = '\\DAILY PL ESTIMATE W NRPD RV2 v6_YK_v2.xlsm'

Filename=folder_xlfile + xlfile

import win32com.client

xl=win32com.client.DispatchEx("Excel.Application")
#wb = xl.Workbooks.Open(Filename)
xl.Application.Run(Filename + "!Module2.CopySummaryData")
#xl.Application.Quit()
del xl

預期結果-在已打開的excelfile中運行vba函數。

實際結果-保持運行而不會出現錯誤消息。 我猜代碼會掛起。

xl.Application.Run(r"'DAILY PL ESTIMATE W NRPD RV2 v6_YK_v2.xlsm'!Module2.CopySummaryData")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM