2016-02-19 138 views
0

我試圖編寫一個函數來選擇工作表中的所有非空單元格,將列寬調整爲內容並將它們格式化爲表格。Python - 使用win32com.client格式化Excell單元格範圍,如表

我卡在最後一個點,這是我當前的代碼:

import win32com.client 
from win32com.client import constants 


f = r"D:\Project\test_copy.xlsx" 

exc = win32com.client.gencache.EnsureDispatch("Excel.Application") 
exc.Visible = 1 
exc.Workbooks.Open(Filename=f) 
exc.ActiveSheet.UsedRange.Select() 
exc.Selection.Columns.AutoFit() 
exc.ActiveSheet.ListObjects("Table1").TableStyle ="TableStyleLight8" 

問題是與最後一行。我不知道該怎麼做,因爲錯誤信息是非常神祕的。 Google在這方面沒有太多幫助。

*snip* 
line 80, in __call__ 
    ret = self._oleobj_.InvokeTypes(0, LCID, 2, (9, 0), ((12, 1),),Index 
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147352565), None) 

我真的很感激這裏有一點幫助......

回答

2

感謝什麼。

它驅使了我一半的堅果,但我明白了。與社區分享。

import win32com.client 
from win32com.client import constants 


f = r"D:\Project\test_copy.xlsx" 

exc = win32com.client.gencache.EnsureDispatch("Excel.Application") 
exc.Visible = 1 
exc.Workbooks.Open(Filename=f) 
exc.ActiveSheet.UsedRange.Select() 
exc.Selection.Columns.AutoFit() 
exc.ActiveSheet.ListObjects.Add().TableStyle = "TableStyleMedium15" 
相關問題