Upload
potimarimo
View
258
Download
0
Embed Size (px)
Citation preview
SPREADSHEETASDATA(RUBY版 )サブタイトル
SPREADSHEETASDATA
• 自作ライブラリ• オープンソースで公開• Excelの読み書き• 理想の設計の研鑽のため• Ruby版と C#版• 今日は Ruby版の紹介です
よくある EXCEL操作ライブラリの問題点Excelのオートメーションの利用
裏で Excelを立ち上げている重い
Excelのバージョンの影響マクロはもともと手作業の自動化用
よくある EXCEL操作ライブラリの問題点APIの設計
Excel VBAの呪縛20年以上前の設計使える機能が多すぎる
こんなライブラリが欲しいExcelのデータを利用するライブラリが簡単に書ける直観的で使いやすい API最近の RDBやXML読み込みライブラリにそん色ない
ファイルオープンWorkBook.open(‘./Book1.xlsx’) do |
book|
#bookを扱うコードをここに記述end
セル
puts book.Sheet1.A2 #> Jacob
table = book.Sheet1.A1_D7
# 氏名の書き出しtable.where(good_language: 'Ruby').each do |student| puts student.first_name + ' ' + student.last_nameend
テーブル
table = book.Sheet1.A_D
# 平均年齢 puts table. all. map{|student| student.age }. inject(0){|total, age| total += age } / table.all.size
テーブル
シート
s = book.Sheet1s2 = book.Sheet2
シート
s = book. 一覧表
s = book.Sheet1puts s.A2 #> Jacobputs s['A2'] #> Jacobputs s[:A2] #> Jacob
一つのことをたくさんのやり方で
puts s.A2 + ' ' + s.B2 #> Jacob Smithputs s.C2 + s.C3 + s.C4 #> 40
文字列と数字
p s.E1 #>{blank}p s.E1 + ' ' #> ""p w.E1 + 0 #> 0
空のセル