# 打开源Excel表格 src_wb = xlrd.open_workbook('花名册批量添加模板.xls') # 打开目标Excel表格 dst_wb = xlrd.open_workbook_xls('花名册批量更新模板.xls') # 获取源Excel表格中的第一个工作表 src_ws = src_wb.sheet_by_index(0) # 获取目标Excel表格中的第一个工作表 dst_ws = dst_wb.sheet_by_index(0) # 循环读取A2、A3等单元格数据,并写入到目标Excel表格中 for i in range(1, src_ws.nrows): cell_value = dst_ws.cell(i, 0).value dst_ws.cell(i + 1, 1, value=cell_value) # 保存目标Excel表格 dst_wb.save('花名册批量更新模板.xls')
时间: 2024-03-12 13:43:53 浏览: 83
经过查看你的代码,这段代码使用的是 `xlrd` 模块,但是前面的错误提示是 `openpyxl` 模块的错误。因此,我之前给出的修改建议可能不适用于此处。
关于这个错误提示,`cell()` 方法是 `xlrd` 模块中的方法,不支持名为 `value` 的关键字参数。你应该使用 `xlwt` 模块中的 `write()` 方法来写入单元格数据。例如,要将第二行第一列的单元格的值设为 `'Hello, world!'`,可以这样写:
```
dst_ws.write(1, 0, 'Hello, world!')
```
如果你想要修改某个单元格的值,也应该使用这种方式来指定单元格的位置。例如,要将第二行第一列的单元格的值设为 `'Hello, world!'`,可以这样写:
```
dst_ws.write(1, 0, 'Hello, world!')
```
因此,你的代码应该修改为下面这样:
```
import xlrd
import xlwt
# 打开源Excel表格
src_wb = xlrd.open_workbook('花名册批量添加模板.xls')
# 打开目标Excel表格
dst_wb = xlrd.open_workbook('花名册批量更新模板.xls', formatting_info=True)
dst_ws = dst_wb.sheet_by_index(0)
# 获取源Excel表格中的第一个工作表
src_ws = src_wb.sheet_by_index(0)
# 循环读取A2、A3等单元格数据,并写入到目标Excel表格中
for i in range(1, src_ws.nrows):
cell_value = dst_ws.cell(i, 0).value
dst_ws.write(i + 1, 1, cell_value)
# 保存目标Excel表格
dst_wb.save('花名册批量更新模板.xls')
```
这样就可以避免使用不支持的关键字参数了。
阅读全文