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坐标。如: