import { read, utils, writeFileXLSX } from 'xlsx'

const fillMerge = (sheet) =>{
        // 遍历合并单元格
        sheet['!merges'].forEach(
            item =>{
                // 保存合并的起始格子的信息,后面的格子都填充得和他一样
                let v = sheet[utils.encode_cell(item.s)]
                for(let c = item.s.c; c <= item.e.c; c++){
                    for(let r = item.s.r; r <= item.e.r; r++){
                        sheet[utils.encode_cell({c: c,r: r})] = v
                    }
                }
                
            }
        )
        return sheet
    }

解释其中的几个函数和参数:
sheet['!merges']:保存的表格的单元格合并情况,数据是一个Range,即{起始点坐标,结束点坐标}。如:
在这里插入图片描述
表示A1:A5。

utils.encode_cell(item.s):编码单元格,将坐标装换为Excel坐标。如:
在这里插入图片描述

GitHub 加速计划 / sh / sheetjs
4
0
下载
📗 SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs
最近提交(Master分支:4 个月前 )
3f44ddd9 - 1 年前
5b4806bf - 2 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐