xlwings库是Python的第三方库,可以直接读写Excel文件,调用VBA,控制Excel页面。使用时,Excel软件会随着python的代码实时更新。Excel的核心结构与xlwings代号对应关系:import xlwings as xwwb=xw.Book('xx.xlsx') #打开已经存在的文件wb=xw.Book() #创建一个空白文件app=xw.App(visible=False) #后台运行,不跳出页面
#选择工作表sht=wb.sheets['sheet1']sht=wb.sheets[0]#新建工作表sht=wb.sheets.add('新表')
#在A1单元格写入天气sht.range('A1').value='天气'#读取单元格(倒过来)天气=sht.range('A1').value
#保存文件wb.save()wb.save('新文件.xlsx')#退出wb.close()app.quit()
其它功能包括格式调整(字体颜色/大小/是否加粗,单元格颜色填充,列宽,行高),插入/删除行和列,合并单元格/解除合并单元格,执行VBA宏,在单元格里写公式。部分内容如下:#sth-工作表的缩写,range-单元格/单元格区域sth.range('A1').font.name='微软雅黑'sth.range('A1').color=(255,255,0) #填充黄色sth.range('A:A').column_width=15 #列宽sht.range('A:A').delete() #删除列sth.range('A1:B1').merge() #合并单元格wb.macro('宏名')() #执行宏sht.range('c1').formula='=SUM(A1:B1)' #写公式批量插入行/列--写成列表#写入一行sht.range('A2').value=['张三',20]#写入一列sht.range('A4').options(transpose=True).value=['李四','王五']transpose=Truem,列表转列写入
1.将DataFrame写入Excel里df=pd.DataFrame()sht.range('A2').value=df2.从Excel读取为DataFramedf=sht.range('A2').options(pd.DataFrame,expand='table').valueexpand='table'自动获取连续数据
这个xlwings模块的编程操作语言和openpyxl模块的有些差异。openpyxl以工作表为调用的基础,xlwings是以单元格区域为基础。 |
| ws.cell(row=1,col=1).value=2 |
| |
|
| |
| |
结合起来记,会更牢靠~~
,如果有收获,点赞!!