excel_utils.go 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. package utils
  2. import (
  3. "github.com/xuri/excelize/v2"
  4. )
  5. func ExportExcel(fileName, sheetName string, cols map[string]string, dataList []interface{}) (file *excelize.File, err error) {
  6. // 创建一个新的 Excel 文件
  7. file = excelize.NewFile()
  8. // 创建一个工作表
  9. index, err := file.NewSheet(sheetName)
  10. if err != nil {
  11. FileLog.Error("创建工作表失败:", err)
  12. }
  13. // 设置工作表的标题行
  14. for k, v := range cols {
  15. err = file.SetCellValue(sheetName, k, v)
  16. if err != nil {
  17. FileLog.Error("创建column失败:", err)
  18. return
  19. }
  20. }
  21. // 添加一些示例数据
  22. // 将数据写入工作表
  23. //row := 2
  24. //for _, item := range dataList {
  25. // file.SetCellValue("Sheet1", fmt.Sprintf("A%d", row), item.ID)
  26. // file.SetCellValue("Sheet1", fmt.Sprintf("B%d", row), item.Name)
  27. // file.SetCellValue("Sheet1", fmt.Sprintf("C%d", row), item.Age)
  28. // file.SetCellValue("Sheet1", fmt.Sprintf("D%d", row), item.CreatedAt.Format("2006-01-02 15:04:05"))
  29. // row++
  30. //}
  31. // 设置活动工作表
  32. file.SetActiveSheet(index)
  33. return
  34. }