Go言語でExcel形式のファイルにデータを打ち込んでみる。

最初に端末にgo get github.com/tealeg/xlsxでExcelをGo言語で作成するためのライブラリを取得しておく。

GitHub - tealeg/xlsx: Google Go (golang) library for reading and writing XLSX files.


次に下記のコードを入力する。

package main

import (
"log"

"github.com/tealeg/xlsx"
)

func main() {
file := xlsx.NewFile()
sheet, err := file.AddSheet("")
if err != nil {
log.Fatal(err)
}

//シート内のセルを指定して値を挿入する
sheet.Cell(0, 0).Value = "usa"
sheet.Cell(0, 1).Value = "kuma"
sheet.Cell(1, 0).Value = "dora"
sheet.Cell(1, 1).Value = "pao"
err = file.Save("kaeru.xlsx")
if err != nil {
log.Fatal(err)
}
}

file := xlsx.NewFile()で、Excelファイルを作成するための構造体ができる。

次にsheet, err := file.AddSheet("")で、シートを作成する。("")の””にはシート名を入れる。今回はシートに名前はつけない。

sheet.Cell(0, 0).Value = "usa"では、Excelの横の列のAの箇所に0、縦の列の1の箇所に0が入るという意味である。同様に他の箇所もデータを入力する。Cellの引数でエクセルのセルの指定が出来、(行、列)で指定する。

A1を指定したければ、(0,0)

B1を指定したければ、(0,1)

行の指定は0から始まるため、実際のエクセルのシート内の行番号とは1ずれる。

列の指定はAを0、Bを1と連番がつく。


最後にerr = file.Save("kaeru.xlsx")で、ファイルを作成、保存する。

下記のようなExcelデータができる。