使用python代码,对excel文件“临时文件\\推送名单.xlsx”操作,遍历此excel的所有sheet,当sheet名为“总行”的时候,其中表头“推送内容”一列是合并单元格,合并的是第5列到至第22列的所有数据,读取表头为“接收人工号”,和“推送内容”的这些列数据,以行遍历这些数据,定义一个字符串,把表头为“推送内容”的这些数据进行单元格依次字符串拼接起来(这些单元格数据里有可能有换行) 相关所有代码
时间: 2024-03-01 10:52:24 浏览: 22
好的,以下是实现这个功能的Python代码:
```python
import openpyxl
# 打开Excel文件
filename = "临时文件\\推送名单.xlsx"
workbook = openpyxl.load_workbook(filename)
# 遍历所有Sheet
for sheet in workbook.worksheets:
# 判断Sheet名是否为“总行”
if sheet.title == "总行":
# 定义字符串
push_content = ""
# 遍历表头为“接收人工号”和“推送内容”的这些列数据
for row in sheet.iter_rows(min_row=1, max_row=1):
for cell in row:
if cell.value == "接收人工号" or cell.value == "推送内容":
# 如果表头为“推送内容”,则将这些列数据进行字符串拼接
if cell.value == "推送内容":
for row2 in sheet.iter_rows(min_row=2):
push_content += row2[cell.column - 1].value
# 输出表头为“接收人工号”和“推送内容”的这些列数据
print(cell.value, end="\t")
# 输出拼接后的字符串
print("\n" + push_content)
# 关闭Excel文件
workbook.close()
```
需要注意的是,以上代码默认Excel文件为当前目录下的“临时文件\\推送名单.xlsx”,在实际应用中需要根据实际情况修改。此外,代码中的输出为控制台输出,可以根据需要进行修改。