|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
excel文件提取列,要求提取A列和C列,保存为新的excel.
import os
from openpyxl import load_workbook
wb = load_workbook("安溪.xlsx ")
sheet = wb.worksheets[0]
for row in sheet.iter_rows(min_row= 1)
cell0 = row[0]
cell1 = row[1]
cell18 = row[18]
print(cell0.value,cell1.value,cell18.value)
求问为什么出错
本帖最后由 isdkz 于 2023-4-12 18:44 编辑
您的代码中有几个问题。根据您的需求,我将解释如何修复它们。
- 首先,您只提到了提取A列和C列,但您的代码也在提取第19列。我会在修复的代码中删除这一部分。
- 您的代码中缺少冒号。在for row in sheet.iter_rows(min_row=1)后面加上冒号。
- 若要将A列和C列的数据保存到新的Excel文件中,您需要创建一个新的工作簿并将数据写入其中。我将在修复的代码中添加这个过程。
修复后的代码如下:
- import os
- from openpyxl import load_workbook
- from openpyxl import Workbook
- # 加载现有的工作簿
- wb = load_workbook("安溪.xlsx")
- sheet = wb.worksheets[0]
- # 创建一个新的工作簿以保存提取的列
- new_wb = Workbook()
- new_sheet = new_wb.active
- # 遍历原始表格中的行
- for row in sheet.iter_rows(min_row=1):
- cell0 = row[0]
- cell2 = row[2] # 将索引更改为2以获取C列
- # 打印值(用于调试目的)
- print(cell0.value, cell2.value)
- # 将值写入新工作表
- new_row = [cell0.value, cell2.value]
- new_sheet.append(new_row)
- # 保存新的工作簿
- new_wb.save("提取的列.xlsx")
复制代码
这段代码应该可以正确地提取A列和C列并将它们保存到一个名为"提取的列.xlsx"的新文件中。
|
|