2017-06-14 50 views
0

我試圖執行位於我個人宏工作簿上的Excel基礎腳本,我正在創建一個Excel文件。這是我到目前爲止有:在Python中執行Visual Basic宏(來自個人宏工作簿)

import os 
import win32com.client 
df2.to_excel("Apartments.xlsx") 
xl=win32com.client.Dispatch("Excel.Application") 
xl.Workbooks.open(filename="C:\Users\my\full\path\Apartments.xlsx", ReadOnly=1) 
xl.Application.Run("Apartments.xlsx!create_chart.create_chart_proc") 

它在第5行打開Excel文件時拋出一個錯誤,我有一種感覺,6號線將無法工作或者是因爲它來自我個人的宏觀書。任何人都有如何讓它發揮作用的想法?

PS。我的模塊名稱是「create_chart」和我的宏名是「create_chart_proc」

回答

0

,如果你說你做了什麼錯誤它要幫忙的,我知道,這條道路

"C:\Users\my\full\path\Apartments.xlsx" 

是不是真的是什麼你的代碼。但\裏面的一個字符串在Python中有一個特殊的含義(例如\n是一個換行符,而\f是一個換頁符)。無論你的\是按照你的意圖解釋,取決於它後面的字符。當你在Python中使用Windows路徑時,通常使用原始字符串的錯誤更少。

r"C:\Users\my\full\path\Apartments.xlsx" 

當您得到該行工作,如果下一行出現問題,然後發佈作爲一個單獨的問題。

+0

對不起,錯誤如下:TypeError:open()得到了一個意想不到的關鍵字參數'filename' –

+0

你是說這樣的代碼是這樣讀嗎?:xl.Workbooks.open(filename = r「C:\ Users \ my \ full \ path \ Apartments.xlsx「,ReadOnly = 1) –

0

我得到了代碼的第一部分工作只需運行代碼如下:

xl.workbooks.open("C:\Users\my\full\path\Apartments.xlsx") 

發佈一個單獨的問題,以獲得宏正常工作。