win32ole で Excel を使う(3)

ブック内のシートを選択するには以下のようにする。

# 一番左のシートを取得
sheet = book.Worksheets(1)

# シート名が "Sheet1" のシートを取得
sheet = book.Worksheets("Sheet1")

ブックオブジェクトの Worksheets プロパティは複数形なので、ブック内のシートのコレクションになっているので、each でまわすことが可能だ。

book.Worksheets.each {|sheet|
  puts sheet.Name
}

ブックにシートを追加するには以下のようにする。

# アクティブシートの前に追加
book.Worksheets(2).Select
book.Worksheets.add

# Sheet2 の後ろに 2枚シートを追加する
book.Worksheets.add({'count' => 2, 'after' => "Sheet1"})

名前付き引数の場合は、ハッシュで実現しているようだ。(Ruby win32ole 拡張モジュール覚え書き - 名前付き引数)
ただ、このページを参考にして同じようにやってみたんだが、私の環境ではエラーになった・・・なぜだ?