// 打开excel文件
excelize.OpenReader(excelFile)
// 初始化一个空excel
excelize.NewFile()
// 获取excel的sheet名称
excelObj.GetSheetList()
// excel文件对象类型
excelObj *excelize.File
// 新建一个sheet
excelObj.NewSheet(sheet)
// 删除一个sheet
excelObj.DeleteSheet(sheet)
// 获取某个sheet的行
rows, err := excelObj.GetRows(sheet)
// 遍历所有单元格,将一个excel内容,copy到另外一个excel文件里(是不是有更加简单的方式,直接将sheet添加过去)
for iR, row := range rows {
for iC, cell := range row {
// 行列坐标,例如A1,A2....
axis, err := excelize.CoordinatesToCellName(iC+1, iR+1)
// 单元格类型,excelize.CellTypeUnset类型,不懂要不是做些特殊处理
cellType, err := fromFile.GetCellType(sheet, axis)
// 坐标设置值
err = toFile.SetCellValue(sheet, axis, cell)
// 列的数字转名称,例如1是A,2是B
colName, err := excelize.ColumnNumberToName(iC + 1)
// 获取excel文件对应sheet的,对于列的列宽度
width, err := fromFile.GetColWidth(sheet, colName)
// 设置列的宽度为模板的宽度
_ = toFile.SetColWidth(sheet, colName, colName, width)
}
// 设置行的高度
height, err := fromFile.GetRowHeight(sheet, iR+1)
_ = toFile.SetRowHeight(sheet, iR+1, height)
}
最后修改:2023 年 12 月 30 日
© 允许规范转载