win32ole で Excel を使う(2)
セルを指定するにはいくつかやり方がある。
# 座標で指定。3行、5列目を指定。 sheet.Cells.Item(3, 5) sheet.Cells.Item("5", "C") sheet.Range("C5").Item # セル名で指定。 sheet.Range("cell_name").Item
上のやり方は単一セルの取り方だけど、複数セルも取得できる。
# A1 〜 A5 を取得する方法 cells = sheet.Range("A1:A5") # OLE オブジェクトには無いメソッド each が使える cells.each {|cell| puts cell.Value }
また、セルのフォント名や、サイズ、色などを変えるには以下のようにする。
cell = sheet.Range("B2") cell.Value = "Hello, World!" cell.Font.Name = "MS P明朝" cell.Font.Size = 24 cell.Font.Bold = true cell.Font.Italic = true cell.Font.ColorIndex = 4