Go言語 - EXCELファイル操作
xlsx形式のエクセルファイルを読んだり、新規作成したりできます。
ただし、xlsxファイルを開いて、そのファイルを変更保存する。あるいは変更した内容を別名保存すると、その保存したファイルをExcelで開くときに内容を修復する旨のメッセージがでます(Excel2013で確認)
サンプル
package main import ( "fmt" "github.com/tealeg/xlsx" ) func main() { excelFileName := "MyXLSXFile.xlsx" xlFile, err := xlsx.OpenFile(excelFileName) if err != nil { panic(err) } for _, sheet := range xlFile.Sheets { for _, row := range sheet.Rows { for _, cell := range row.Cells { fmt.Printf("%s ", cell.String()) } fmt.Printf("\n") } } var sheet *xlsx.Sheet // for _, sheet = range xlFile.Sheets { // if sheet.Name == "Sheet1" {break} // } sheet = xlFile.Sheets[0] rows := sheet.Rows cell := rows[1].Cells[1] fmt.Printf("\n%s\n\n", cell.Value) cell.Value = "B-2" for _, c := range rows[1].Cells { fmt.Printf("%s ", c.String()) } fmt.Printf("\n") xlFile.Save("Change" + excelFileName) }