写一段代码,实现以下功能:将指定路径xlsx文件的D列单元格拆分到新增的行中,分隔符为换行符。同时,将A、B、C三列的单元格原封不动的复制到新增的行中。
时间: 2024-04-16 17:27:06 浏览: 90
当然可以!以下是一个示例代码,可以实现你所描述的功能:
```python
import openpyxl
def split_cells(filepath):
# 加载xlsx文件
wb = openpyxl.load_workbook(filepath)
sheet = wb.active
# 创建新的sheet用于存储拆分后的数据
new_sheet = wb.create_sheet(title="拆分结果")
for row in sheet.iter_rows(min_row=2, values_only=True):
# 获取A、B、C列的值
a_value, b_value, c_value, d_value = row[0], row[1], row[2], row[3]
# 拆分D列的值并创建新行
d_values = d_value.split('\n')
for d in d_values:
new_sheet.append([a_value, b_value, c_value, d])
# 保存拆分结果到新的xlsx文件
new_filepath = filepath.split('.xlsx')[0] + '_split.xlsx'
wb.save(new_filepath)
print("拆分完成!拆分结果保存在文件:", new_filepath)
# 使用示例
filepath = "path/to/your/file.xlsx"
split_cells(filepath)
```
你只需要将 `filepath` 替换为你想要处理的xlsx文件的路径,运行这段代码,就能够实现将D列单元格拆分到新增的行中,并将A、B、C三列的单元格原封不动地复制到新增的行中。拆分结果将保存在一个新的xlsx文件中。
阅读全文