modulepackage
0.0.0-20171207172601-c6a9e4c4b4c4
Repository: https://github.com/loadoff/excl.git
Documentation: pkg.go.dev
# README
excl
これはexcelコントロール用のライブラリ
Description
基本的にもとのexcelファイルを破壊せずにデータの入力を行うためのライブラリです。 また大量のデータを扱う上でも優位になるように開発を行います。
Usage
既存のExcelファイルを操作
// Excelファイルを読み込み
w, _ := excl.Open("path/to/read.xlsx")
// シートを開く
s, _ := w.OpenSheet("Sheet1")
// 一行目を取得
r := s.GetRow(1)
// 1列目のセルを取得
c := r.GetCell(1)
// セルに10を出力
c.SetNumber("10")
// セルに1を出力
s.GetRow(2).GetCell(1).SetNumber(1)
// セルに1.1を出力
s.GetRow(3).GetCell(1).SetNumber(1.1)
// 2列目のセルにABCDEという文字列を出力
c = r.SetString("ABCDE", 2)
// セルに日付を出力
s.GetRow(4).GetCell(1).SetDate(time.Now())
// セルに数式を出力
s.GetRow(5).GetCell(1).SetFormula("SUM(A2:A3)")
// シートを閉じる
s.Close()
// 保存
w.Save("path/to/new.xlsx")
新規Excelファイルを作成
// 新規Excelファイルを作成
w, _ := excl.Create()
s, _ := w.OpenSheet("Sheet1")
s.Close()
w.Save("path/to/new.xlsx")
セルの書式の設定方法
w, _ := excl.Open("path/to/read.xlsx")
s, _ := w.OpenSheet("Sheet1")
r := s.GetRow(1)
c := r.GetCell(1)
c.SetNumber("10000.00")
// 数値のフォーマットを設定する
c.SetNumFmt("#,##0.0")
// フォントの設定
c.SetFont(excl.Font{Size: 12, Color: "FF00FFFF", Bold: true, Italic: false,Underline: false})
// 背景色の設定
c.SetBackgroundColor("FFFF00FF")
// 罫線の設定
c.SetBorder(excl.Border{
Left: &excl.BorderSetting{Style: "thin", Color: "FFFFFF00"},
Right: &excl.BorderSetting{Style: "hair"},
Top: &excl.BorderSetting{Style: "dashDotDot"},
Bottom: nil,
})
s.Close()
w.Save("path/to/new.xlsx")
グリッド線の表示非表示
w, _ := excl.Open("path/to/read.xlsx")
s, _ := w.OpenSheet("Sheet1")
// シートのグリッド線を表示
s.ShowGridlines(true)
// シートのグリッド線を非表示
s.ShowGridlines(false)
s.Close()
w.Save("path/to/new.xlsx")
カラム幅の変更
w, _ := excl.Open("path/to/read.xlsx")
s, _ := w.OpenSheet("Sheet1")
// 5番目のカラム幅を1.1に変更
s.SetColWidth(1.1, 5)
s.Close()
w.Save("path/to/new.xlsx")
計算式結果の更新が必要な場合はSetForceFormulaRecalculationを使用する この関数を利用することでExcelを開いた際に結果が自動的に更新される
w, _ := excl.Open("path/to/read.xlsx")
// 何か処理...
w.SetForceFormulaRecalculation(true)
w.Save("path/to/new.xlsx")
シート名変更
w, _ := excl.Open("path/to/read.xlsx")
w.RenameSheet("oldname", "newname")
w.Save("path/to/new.xlsx")
シートの表示非表示切り替え
w, _ := excl.Open("path/to/read.xlsx")
// シートを隠す
w.HideSheet("Sheet1")
// シートを表示する
w.ShowSheet("Sheet1")
w.Save("path/to/new.xlsx")
Install
$ go get github.com/loadoff/excl
Licence
Author
# Functions
ColNumPosition obtain column no from AtoZ column string.
ColStringPosition obtain AtoZ column string from column no.
Create 新しくワークブックを作成する.
IsExistString 配列内に文字列が存在するかを確認する.
NewCell は新しくcellを作成する.
NewExcl は.
NewRow は新しく行を追加する際に使用する.
Open Excelファイルを開く.
OpenContentTypes [Content_Types].xmlファイルを開き構造体に読み込む.
OpenSharedStrings 新しいSharedString構造体を作成する.
OpenStyles styles.xmlファイルを開く.
OpenWorkbookRels open workbook.xml.rels.
# Structs
Border 罫線の設定.
BorderSetting 罫線の設定.
Cell はセル一つ一つに対する構造体.
ContentTypes ContentTypesの情報を保持.
ContentTypesXML [Content_Types].xmlファイルを読み込む.
Font フォントの設定.
Relationships Relationshipsタグの情報.
Row 行の構造体.
SharedStrings 構造体.
Sheet struct for control sheet data.
SheetXML sheet.xml information.
Style セルの書式情報.
Styles スタイルの情報を持った構造体.
Tag タグの情報をすべて保管する.
Workbook はワークブック内の情報を格納する.
WorkbookRels workbook.xml.relの情報をもつ構造体.
WorkbookXML workbook.xmlに記載されている<workbook>タグの中身.