请编写一个Python代码,实现从Excel表格A中获取数据,实现在Excel表格B中数据的替换。
时间: 2023-05-28 21:04:42 浏览: 115
基于Python实现在Excel中查找并替换数据
这里提供一种基于openpyxl库的解决方案,具体代码如下:
```python
import openpyxl
# 打开Excel表格A和B
wb_a = openpyxl.load_workbook('表格A.xlsx')
wb_b = openpyxl.load_workbook('表格B.xlsx')
# 获取表格A中的数据
sheet_a = wb_a.active
data_a = []
for row in sheet_a.iter_rows(values_only=True):
data_a.append(list(row))
# 获取表格B中的数据
sheet_b = wb_b.active
data_b = []
for row in sheet_b.iter_rows(values_only=True):
data_b.append(list(row))
# 替换数据
for i in range(len(data_b)):
for j in range(len(data_b[i])):
if data_b[i][j] in data_a:
replace_index = data_a.index(data_b[i][j])
data_b[i][j] = data_a[replace_index+1][j]
# 将修改后的数据写入表格B
for i in range(len(data_b)):
for j in range(len(data_b[i])):
sheet_b.cell(row=i+1, column=j+1, value=data_b[i][j])
# 保存表格B
wb_b.save('表格B.xlsx')
```
代码解释:
1. 首先使用openpyxl库分别打开表格A和B。
2. 使用iter_rows()方法获取表格A和B中的数据,存储在data_a和data_b两个列表中。
3. 循环遍历表格B中的每个单元格,如果该单元格的值在表格A中存在,就在表格B中将该单元格的值替换为表格A中对应行的同一列的值。
4. 将修改后的数据写入表格B中,并保存表格B。
阅读全文