m_shige1979のときどきITブログ

プログラムの勉強をしながら学習したことや経験したことをぼそぼそと書いていきます

Github(変なおっさんの顔でるので気をつけてね)

https://github.com/mshige1979

golangでExcelのファイルへ書き込み

使用するパッケージ

https://github.com/tealeg/xlsx

サンプルコード

package main

import (
    "fmt"
    "github.com/tealeg/xlsx"
)

func main(){
    // ファイル
    var file *xlsx.File
    // シート
    var sheet *xlsx.Sheet
    //
    var row *xlsx.Row
    var cell *xlsx.Cell
    var err error

    var fileName = "テストファイル.xlsx"

    file = xlsx.NewFile()
    sheet, err = file.AddSheet("サンプル1")
    if err != nil {
        fmt.Printf(err.Error())
    }

    for i:=0;i < 10;i++ {
        row = sheet.AddRow()
        for j:=0;j<10;j++ {
            cell = row.AddCell()
            cell.Value = fmt.Sprintf("%d行目,%d列目", i, j)
        }
    }

    // ファイルを保存
    err = file.Save(fileName)
    if err != nil {
        fmt.Printf(err.Error())
    }

}

macの環境にはOfficeがないので他のやつで開いた

f:id:m_shige1979:20160117011047p:plain
f:id:m_shige1979:20160117011651p:plain

セルのデータやシートも日本語で書き込みができてた
なんとか使えそう