将文本从文件复制到指定的Excel列

时间:2017-07-20 21:58:46

标签: python excel python-3.x

我有一个文本文件,比如“A.txt”和一个Excel文件,比如“B.xlsx”。我的目标是使用python脚本将A.txt中的所有文本复制到B.xlsx中的指定列。例如,假设A.txt看起来像:

Word1 5
Word2 Word3
6 Word4

然后我想将其复制到工作表“Words”中的列J中,这样单元格J1的内容为“Word1 5”,J2的内容为“Word2 Word3”等等...

因此,要重新表述问题,如何从指定的文本文件中复制文本并将其粘贴到指定的Excel列中,以便每个单元格的内容等同于每行的内容(一对一)关系)?

非常感谢您的任何帮助!

1 个答案:

答案 0 :(得分:1)

使用win32com库直接与microsoft excel接口,因为您在Excel中工作:

import win32com.client

#Read text file lines into list
f = open("A.txt")
text_contents = f.readlines()

# Open excel and your workbook
col = 2 # column B
excel=win32com.client.Dispatch("Excel.Application")
excel.Visible=True # Note: set to false when scripting, only True for this example
wb=excel.Workbooks.Open('B.xlsx')
ws = wb.Worksheets('Sheet1')

#Write text contents to column range
ws.Range(ws.Cells(col ,1),ws.Cells(col,len(text_contents))).Value = text_contents

#Save the workbook and quit
wb.Close(True)
excel.Application.Quit()