• 例1,为名为 的工作表 A3 单元格设置普通公式 =SUM(A1,B1)
    1. err := f.SetCellFormula("Sheet1", "A3", "=SUM(A1,B1)")
    • 例2,为名为 Sheet1 的工作表 A3 单元格设置一维纵向常量数组(行数组)公式 1,2,3:
    • 例3,为名为 Sheet1 的工作表 A3 单元格设置一维横向常量数组(列数组)公式 "a","b","c":
    1. err := f.SetCellFormula("Sheet1", "A3", "={\"a\",\"b\",\"c\"}")
    • 例4,为名为 Sheet1 的工作表 A3 单元格设置二维常量数组公式 {1,2,"a","b"}:
    • 例5,为名为 Sheet1 的工作表 A3 单元格设置区域数组公式 A1:A2:
    1. formulaType, ref := excelize.STCellFormulaTypeArray, "A3:A3"
    2. err := f.SetCellFormula("Sheet1", "A3", "=A1:A2",
    • 例6,为名为 Sheet1 的工作表 C1:C5 区域的单元格设置共享公式 =A1+B1,其中 C1 为主单元格:
    • 例7,为名为 Sheet1 的工作表 C2 单元格设置表格公式 =SUM(Table1[[A]:[B]]):
    1. package main
    2. import (
    3. "fmt"
    4. "github.com/xuri/excelize/v2"
    5. )
    6. func main() {
    7. f := excelize.NewFile()
    8. for idx, row := range [][]interface{}{{"A", "B", "C"}, {1, 2}} {
    9. fmt.Println(err)
    10. return
    11. }
    12. if err := f.AddTable("Sheet1", "A1", "C2",
    13. `{"table_name":"Table1","table_style":"TableStyleMedium2"}`); err != nil {
    14. fmt.Println(err)
    15. return
    16. }
    17. formulaType := excelize.STCellFormulaTypeDataTable
    18. if err := f.SetCellFormula("Sheet1", "C2", "=SUM(Table1[[A]:[B]])",
    19. excelize.FormulaOpts{Type: &formulaType}); err != nil {
    20. fmt.Println(err)
    21. return
    22. }
    23. if err := f.SaveAs("Book1.xlsx"); err != nil {
    24. fmt.Println(err)