上图初始数据,

这些数据我需要使用,openpyxl 读取时 A(2,3,4) 是 None,但是我需要的是 A (2,3,4)也是A1的value,又不想改脚本,那我就在写一个脚本改格式吧

想法:先取消单元格,然后把None 补全成 合并单元格的第一个值,代码如下

# -*- coding: utf-8 -*-
# create time    : 2021-06-08 17:21
# author  : CY
# file    : excel_tools.py
# modify time:
import openpyxldef cancel_merge_first_value(file_path):"""取消合并单元格 并且 把 None 的值 补全 """wb = openpyxl.load_workbook(filename=file_path)sheets = wb.sheetnames  # 获取所有的表格start_index_list = []sheet_name_dict = {'工人考勤(接口)': start_index_list}for sheet in sheets:if sheet not in sheet_name_dict.keys():continuews = wb[sheet]merge_list = ws.merged_cellsall_merge_index = []for merge_area in merge_list:index_dict = {'all_key': merge_area.coord, 'max_row': merge_area.max_row, 'min_row': merge_area.min_row}start_index_list.append(index_dict)min_row, max_row, min_col, max_col = merge_area.min_row, merge_area.max_row, merge_area.min_col, merge_area.max_colall_merge_index.append((min_row, max_row, min_col, max_col))for merge_index in all_merge_index:ws.unmerge_cells(start_row=merge_index[0], end_row=merge_index[1], start_column=merge_index[2], end_column=merge_index[3])for use_index in start_index_list:all_index = use_index['all_key'].split(':')min_index = use_index['min_row']max_index = use_index['max_row']col_name = all_index[0].split(str(min_index))[0]start_value = ws[f'{col_name}{min_index}'].valuefor num_index in range(min_index, max_index+1):ws[f'{col_name}{num_index}'] = start_valuewb.save(file_path)if __name__ == '__main__':use_file_path = r""cancel_merge_first_value(use_file_path)

run 之后 就成了

openpyxl 取消合并单元格且填充相关推荐

  1. EXCEL取消合并单元格并填充每个取消合并后的单元格

    如何取消合并单元格并填充 相信经常和数据打交道的朋友,excel表格是大家最熟悉的不过的了,但是excel的一些功能却是很多人并不了解的,今天我把自己的工作中经过摸索实现的一种快速取消合并单元格并填充 ...

  2. 个人永久性免费-Excel催化剂功能第52波-相同内容批量合并单元格,取消合并单元格并填充内容...

    在高级Excel用户群体中无比痛恨的合并单元格,在现实的表格中却阴魂不散的纠缠不断.今天Excel催化剂也来成为"帮凶",制造更多的合并单元格.虽然开发出此功能,请使用过程中务必要 ...

  3. excel 取消合并单元格并填充

    刷蓝 取消合并单元格 在刷蓝的状态下 ctrl+G  --按条件选择-- 空值 这个时候有一个单元格会被选中 假如是A3 在刷蓝的状态下填写 =A2(就是被选中的上一个格) 别按回车,使用ctrl+回 ...

  4. 快速取消合并单元格并自动填充(含空值)

    合并单元格数据中包含空值,取消合并单元格并填充时,空值填充错误怎么办? 复制原数据到一个新的sheet 取消合并单元格 CTRL+G 定位空值 编辑栏输入"太阳"(任一数据表中不包 ...

  5. Excel快速取消合并单元格并自动填充

    CTRL+A 全选 取消单元格合并 CTRL+G 定位空值 ,编辑栏输入 ''=A2(首个空值上一单元格,仔细观察可以看到首个空值单元格背景色为无色,其他空值单元格为灰色填充))" CTRL ...

  6. 使用xlwings如何使用UnMerge() 方法取消合并单元格之后,多出来的单元格自动填充为第一个单元格的值?...

    首先,需要确保你已经安装了 xlwings 库并且已经在你的代码中导入了它. 然后,你可以使用 xlwings 库中的 Range 对象的 unmerge() 方法来取消合并单元格.示例代码如下: i ...

  7. 使用pandas如何在Excel里面取消合并单元格?多出来的单元格如何自动填充为第一个单元格的值?...

    首先,如果你希望使用 pandas 在 Excel 中取消合并单元格,你可以使用 pandas 的 unmerge_cells() 方法. 例如,假设你有一个名为 df 的 DataFrame,你可以 ...

  8. excel取消多列合并单元格并填充内容

    场景:层级分为一级流程.二级流程.三级流程.每级流程均可能为叶子节点且叶子节点不能有下级流程.只有叶子节点可以配置要素.现在数据如下图.需要初始化数据. 步骤:1.选中数据后点击"合并后居中 ...

  9. Python读取合并单元格数据并取消合并单元格——将每一行读取为列表

    今天在解决需求的时候,遇到一个问题就是有一个Excel表格A列是合并单元格,但是我想 读取的时候,希望读取到的内容是非合并单元格,也就是说想取消合并单元格,并自动补充数据,好啦,我们一起看一下,下面的 ...

  10. 如何取消合并单元格并保留单元格内容以及如何合并单元格

    Sub 取消合并单元格并保留内容()     Dim strmer As String '用于存储需要取消合并单元格的内容     Dim intcot As Integer '用于存储被合并单元格的 ...

最新文章

  1. PHP 毫秒级定时器,实现php毫秒定时器方法详解
  2. 刷脸支付弊端举例_刷脸支付的优势和弊端,你都知道?
  3. 解决mxnet错误:OSError: libcudart.so.10.0: cannot open shared object file: No such file or directory
  4. 【C语言进阶深度学习记录】三十二 函数指针与使用函数指针实现回调函数
  5. 三天打鱼两天晒网 (15 分)
  6. 引用之函数返回值 函数的返回值为引用类型《三》
  7. HTML常用的标签总结
  8. scala教程(二) 函数
  9. 教育行业剧变:校讯通将死 家校沟通永生
  10. 《SDN核心技术剖析和实战指南》
  11. 头条 上传图片大小_无锡抖音巨量运营培训南天值得选择——鹰手营子矿头条...
  12. jquery easyui datagrid deleteRow(删除行)的BUG!
  13. MATLAB实现 有限长序列的线性卷积和圆周卷积
  14. Spider和CrawlSpider的源码分析
  15. 【唐诗学习】六、诗仙李白
  16. 新年Java小游戏之「年兽大作战」祝您笑口常开
  17. tsp matlab,TSP matlab
  18. 算法之克鲁斯卡尔(Kruskal)算法
  19. 一节计算机课作文500,难忘的一堂课作文500字5篇
  20. 《史蒂芬·乔布斯传》摘录

热门文章

  1. TensorFlow学习记录:saved_model模块的用法
  2. 权重衰减(weight decay)与学习率衰减(learning rate decay)
  3. 查找微信公众号服务器地址,手把手教大家搭建微信公众号查题功能
  4. 怎样删除计算机Windows7自带的游戏,win7自带游戏如何卸载?win7卸载自带游戏的步骤...
  5. 细分领域:偏门的色流玩法+简单的色流变现套路
  6. element树形控件拖拽allow-drop控制
  7. 大数据服务节点配置参考
  8. 畅捷支付显示连接服务器失败,畅捷支付POS机常见错误码解决方法!
  9. matlab中grid的用法
  10. 【PTA】中M22春C、Java入门练习7-138 质因子分解