Как вставить таблицу Excel в слово с помощью Python - PullRequest
0 голосов
/ 24 мая 2018

Я пытаюсь скопировать таблицу Excel в текстовый файл с неповрежденным форматированием и пока нашел нижеприведенный код.но этот код, вставляя в слово, удаляет все остальное содержимое из файла Word.Помогите, пожалуйста, как просто добавить в существующий текстовый документ вместо того, чтобы перезаписать его?

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").Copy()      # Selected the table I need to copy
doc.Content.PasteExcelTable(False, False, False)

1 Ответ

0 голосов
/ 24 мая 2018

Я действительно не знаю Python, но экстраполируя из фрагмента кода, который вы нам показываете, посмотрите, как назначить все тело документа объекту Word.Range (в отличие от Excel.Range).Затем вам нужно свернуть Range либо до его начальной, либо до конечной точки - думайте об этом, как о нажатии клавиши со стрелкой влево или вправо, чтобы "свернуть" выделенную точку.Затем вы можете вставить новый контент, не нарушая существующий контент.

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").Copy()      # Selected the table I need to copy
wdRange = doc.Content
wdRange.Collapse(1) #start of the document, use 0 for end of the document
wdRange.PasteExcelTable(False, False, False)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...