Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to copy a table from excel to word using pythonCOM

Is it possible to get the table from excel file and paste it to the word document saving its excel style? I didn't find adequate documentation about win32com and all its methods.

I've found a method PasteExcelTable, and I guess I should select the table from excel before invoking this method. I do the following:

from win32com import client
excel = client.Dispatch("Excel.Application")
word = client.Dispatch("Word.Application")
doc = word.Documents.Open("C:/word_file.docx")
book = excel.Workbooks.Open("C:/excel_file.xlsx")
sheet = book.Worksheets(1)
sheet.Range("A1:D20").Select      # Selected the table I need to copy
doc.Content.PasteExcelTable(False, False, False)

And then it fails. I don't even know if I go the right direction.

like image 635
Vladimir Avatar asked Sep 03 '12 13:09

Vladimir


1 Answers

Got it! There is no need to select anything, just straight copying

sheet.Range("A1:D20").Copy()
doc.Content.PasteExcelTable(False,False,False)

Since there is no documentation I had to try everything at random.

like image 197
Vladimir Avatar answered Oct 29 '22 16:10

Vladimir