wb3 = openpyxl.Workbook() ws3 = wb3.active for i, row in enumerate(filtered_data): ws3.cell(row=i+1, column=1, value=row[8].value)修改這段代碼將篩選後的所以數據複製到新的工作表2中
时间: 2024-03-28 08:42:02 浏览: 398
你可以按照以下步骤修改代码,将筛选后的所有数据复制到新的工作表2中:
1. 首先,在代码开头导入 `openpyxl` 库:
```python
import openpyxl
```
2. 创建一个新的工作簿 `wb2`,并获取它的活动工作表 `ws2`:
```python
wb2 = openpyxl.Workbook()
ws2 = wb2.active
```
3. 在 `for` 循环中,将 `row[8].value` 的值写入新工作表2的第 `i+1` 行第1列:
```python
for i, row in enumerate(filtered_data):
ws2.cell(row=i+1, column=1, value=row[8].value)
```
4. 最后,保存工作簿 `wb2`:
```python
wb2.save('新工作簿2.xlsx')
```
完整代码如下:
```python
import openpyxl
# 打开原始工作簿和工作表
wb1 = openpyxl.load_workbook('原始工作簿.xlsx')
ws1 = wb1.active
# 筛选数据
filtered_data = list(filter(lambda x: x[0].value == '筛选条件', ws1.rows))
# 创建新的工作簿和工作表
wb2 = openpyxl.Workbook()
ws2 = wb2.active
# 将筛选后的数据写入新工作表2
for i, row in enumerate(filtered_data):
ws2.cell(row=i+1, column=1, value=row[8].value)
# 保存工作簿
wb2.save('新工作簿2.xlsx')
```
阅读全文