用xlwt给ws填加公式求和另一个ws
时间: 2023-09-15 14:06:03 浏览: 87
python实现xlwt xlrd 指定条件给excel行添加颜色
5星 · 资源好评率100%
### 回答1:
要在一个worksheet中填加公式求和另一个worksheet,需要使用xlwt库中的公式功能。具体步骤如下:
1. 导入xlwt库并打开Excel文件:
```python
import xlwt
from xlwt import Workbook
# 创建一个Workbook对象,注意Workbook的大小写
book = Workbook()
# 添加一个sheet页
ws1 = book.add_sheet('Sheet1')
ws2 = book.add_sheet('Sheet2')
```
2. 在第一个worksheet中添加数据:
```python
# 向第一个worksheet中添加数据
ws1.write(0, 0, 10)
ws1.write(1, 0, 20)
ws1.write(2, 0, 30)
```
3. 在第二个worksheet中添加数据:
```python
# 向第二个worksheet中添加数据
ws2.write(0, 0, 1)
ws2.write(1, 0, 2)
ws2.write(2, 0, 3)
```
4. 在第二个worksheet中添加求和公式:
```python
# 在第二个worksheet中添加求和公式
ws2.write(3, 0, xlwt.Formula('SUM(Sheet1!A1:A3)'))
```
5. 保存Excel文件:
```python
# 保存Excel文件
book.save('example.xls')
```
这样,就可以在第二个worksheet中自动计算第一个worksheet中的数据之和了。
### 回答2:
使用xlwt库给一个worksheet填加公式求和另一个worksheet的方法如下所示:
import xlwt
def fill_sum_formula(ws1, ws2, ws2_sum_range, ws1_sum_cell):
# 在ws1中填加公式求和ws2的指定范围
ws1.write_formula(ws1_sum_cell, 'SUM({})'.format(ws2_sum_range), None)
# 创建一个新的工作簿和两个工作表
workbook = xlwt.Workbook()
ws1 = workbook.add_sheet('Sheet1')
ws2 = workbook.add_sheet('Sheet2')
# 在ws2中填写一些数据
for i in range(10):
for j in range(5):
ws2.write(i, j, i+j)
# 设置ws2中需要求和的范围
ws2_sum_range = 'Sheet2!A1:E10'
# 设置ws1中需要填加求和公式的单元格
ws1_sum_cell = 'A1'
# 调用函数填加求和公式
fill_sum_formula(ws1, ws2, ws2_sum_range, ws1_sum_cell)
# 保存工作簿
workbook.save('result.xls')
在上述示例代码中,我们首先导入了xlwt库,然后定义了一个用于填加求和公式的函数fill_sum_formula。该函数接收四个参数,ws1为要填加公式的worksheet,ws2为要求和的worksheet,ws2_sum_range为ws2中需要求和的范围,ws1_sum_cell为ws1中要填加公式的单元格。
然后,我们创建了一个新的工作簿,并添加了两个工作表ws1和ws2。接着,在ws2中填写了一些数据。然后,我们调用fill_sum_formula函数,将ws1、ws2、ws2_sum_range和ws1_sum_cell作为参数传入,来填加求和公式。最后,我们保存工作簿到result.xls文件中。
这样,我们就通过xlwt库成功地给一个worksheet填加了求和另一个worksheet的公式。
### 回答3:
使用xlwt库可以将公式求和填充到另一个工作表(worksheet)中。首先,我们需要创建一个工作簿(workbook)对象和一个工作表对象(worksheet)。
接下来,我们可以在第一个工作表中填充数据,并使用公式求和这些数据。
然后,我们创建一个公式,使用相应的工作表的名称和单元格范围,在第二个工作表中填充这个公式。
最后,保存并关闭工作簿。
以下是示例代码:
```python
import xlwt
# 创建工作簿和工作表对象
workbook = xlwt.Workbook()
worksheet1 = workbook.add_sheet('Sheet1')
worksheet2 = workbook.add_sheet('Sheet2')
# 在第一个工作表中填充数据
worksheet1.write(0, 0, 1)
worksheet1.write(0, 1, 2)
worksheet1.write(1, 0, 3)
worksheet1.write(1, 1, 4)
# 创建公式求和
formula = 'SUM(Sheet1!A1:B2)'
# 在第二个工作表中填充公式
worksheet2.write(0, 0, xlwt.Formula(formula))
# 保存并关闭工作簿
workbook.save('output.xls')
workbook.close()
```
执行以上代码后,将会生成一个名为"output.xls"的Excel文件,其中第二个工作表中的A1单元格将会显示求和结果。
阅读全文