前言
以前学习 Python 的 pandas 包时,经常到一些 excel 的论坛寻找实战机会。接下来我会陆续把相关案例分享出来,还会把其中的技术要点做详细的讲解。
本文要点:
-
使用 xlwings ,如同 vba 一样操作 excel
-
使用 pandas 快速做透视表
注意:虽然本文是"替代Excel Vba"系列,但希望各位读者明白,工具都是各有所长,适合才是好。
案例
今天的例子非常简单,从一个表中读取学生的数据,然后按班级汇总各个科目的成绩。
下图,左为原始数据,右为示意结果:
导入包
本文所需的包,安装命令如下:
pip install xlwings` `pip install pandas
脚本中导入
读取表格的数据
-
使用 xw.books[] 可以快速访问当前打开的工作簿。可以使用索引也可以使用名字。
-
同样,通过 book.sheets[] 快速访问工作表,可以使用索引也可以使用名字。
接下来读取表格数据
-
通过 sheet.range(地址) 即可访问单元格区域。
-
接着使用 current_region 快速得到整个表格数据。这里可以使用其他方式定位数据的大小。