ws用xlwt给加SUM函数,提取sheet名包含关键字‘工资’的ws求和
时间: 2024-05-07 22:22:30 浏览: 117
127-1 使用Sum函数求和.xlsm
可以通过以下步骤实现:
1. 使用 xlrd 打开 Excel 文件,获取所有工作表的名称。
2. 遍历所有工作表的名称,如果名称中包含关键字“工资”,则使用 xlrd 打开该工作表,获取工资列的值。
3. 使用 xlwt 创建一个新的 Excel 文件,并使用 xlwt.Worksheet 对象创建一个新的工作表。
4. 在新的工作表中,使用 xlwt.Formula 对象创建 SUM 函数,将工资列的值相加。
5. 将 SUM 函数写入新工作表的指定单元格中。
6. 保存新的 Excel 文件。
下面是示例代码:
```python
import xlrd
import xlwt
# 打开原始 Excel 文件
workbook = xlrd.open_workbook('original.xls')
# 获取所有工作表的名称
sheet_names = workbook.sheet_names()
# 创建新的 Excel 文件
new_workbook = xlwt.Workbook()
new_sheet = new_workbook.add_sheet('Summary')
# 遍历所有工作表的名称
for sheet_name in sheet_names:
if '工资' in sheet_name:
# 打开当前工作表
sheet = workbook.sheet_by_name(sheet_name)
# 获取工资列的值
salary_col = sheet.col_values(1)[1:]
# 创建 SUM 函数
sum_formula = xlwt.Formula('SUM(B2:B{})'.format(len(salary_col) + 1))
# 将 SUM 函数写入新工作表的指定单元格中
new_sheet.write(0, 0, sheet_name)
new_sheet.write(0, 1, sum_formula)
# 保存新的 Excel 文件
new_workbook.save('summary.xls')
```
阅读全文