使用python的openpyxl库,打开选中的excel,遍历sheet内每一行的S、T、U列的数据的绝对值相加,若数字相加为0,则删除这一行
时间: 2023-05-20 22:07:00 浏览: 161
可以使用以下代码实现:
```python
import openpyxl
# 打开选中的excel文件
workbook = openpyxl.load_workbook('selected_excel.xlsx')
# 遍历每个sheet
for sheet in workbook.worksheets:
# 遍历每一行
for row in sheet.iter_rows():
# 获取S、T、U列的值
s_value = row[18].value
t_value = row[19].value
u_value = row[20].value
# 计算绝对值之和
sum_abs = abs(s_value) + abs(t_value) + abs(u_value)
# 如果为0,则删除这一行
if sum_abs == 0:
sheet.delete_rows(row[0].row, 1)
# 保存修改后的excel文件
workbook.save('selected_excel.xlsx')
```
注意:需要根据实际情况修改列的索引值。
相关问题
使用python的openpyxl库,打开选中的excel,将每个sheet的所有行复制到1个新excel的新sheet内,将sheet命名为"有色台账汇总"
好的,这个问题可以回答。以下是实现该功能的 Python 代码:
```python
import openpyxl
# 打开选中的 Excel 文件
wb = openpyxl.load_workbook('selected_excel.xlsx')
# 创建新的 Excel 文件
new_wb = openpyxl.Workbook()
# 创建新的 Sheet
new_sheet = new_wb.active
new_sheet.title = '有色台账汇总'
# 遍历每个 Sheet
for sheet_name in wb.sheetnames:
sheet = wb[sheet_name]
# 遍历每行数据
for row in sheet.iter_rows():
# 将每行数据复制到新的 Sheet 中
new_sheet.append([cell.value for cell in row])
# 保存新的 Excel 文件
new_wb.save('new_excel.xlsx')
```
这段代码使用 openpyxl 库打开选中的 Excel 文件,遍历每个 Sheet,遍历每行数据,将每行数据复制到新的 Sheet 中,最后保存新的 Excel 文件。新的 Sheet 命名为“有色台账汇总”。
阅读全文