More Related Content
More from Keisuke Hata (20)
Are You Enjoy Ruby 2 Day
- 4. 5行でExcelを簡単操作!!(2)
• さきほどのサンプル、何をしているかわかった方が
ほとんどだと思います。
そうです!!
「Excelのシート名一覧」を取得しているのです。
• Rubyといったらイテレーターですから、
それをフルに使い、Excelのシート数だけ回して、名前
を表示しているだけなんです。
しかも、ブロック終了後に自動でExcelを終了してくれ
ます。
というか、そうなるように設計してあるからなんですけどね(^^;)
きちんと終了しないとプロセスに残り続けるので注意。
- 6. セル操作をマスター(`・ω・´)
• セルの操作をマスターするには、VBAで実装されている
メソッドを覚える必要がありますが、Rubyでやる場合
は、最低限のことさえ覚えておけば、たいていのことは
できちゃいます。
最低限覚えておくこと
① セルオブジェクト.Value => セルの値
② セルオブジェクト.Interior.ColorIndex => セル色
③ Rangeオブジェクト.Rows => 行コレクション
④ 行コレクション.Columns => 列コレクション
この4つ覚えれば、仕事で大活躍!!
- 8. UsedRange?って何?
• 先ほどのサンプルで出てきた”UsedRange”
とは、文字通り使われているセル範囲でこれを
使うことで、楽にセルアクセスが可能になります。
UsedRangeが指す部分を緑の点線で
表してみました。
先ほどのサンプルでは、UsedRangeの範囲に
対して、行(Row)の順に列(Columns)の数だけを
イテレーターで回していたことになります。
なので、アクセス順は、
Rails -> Ruby -> 100 -> 30
となります。
- 9. OLEは、難しくない!!
WinOLEって聞くと、扱いづらいな、面倒だなっていう印象が強いですが、
•
Rubyでは、WinOLEを標準でサポートしているので、このように簡単に
扱えてしまいます。
データは、Excelでもらうけど、取得する時は、コピペしてソースに貼り
付け、なんてことは、もうしなくてもいいんです。
Ruby+OLEでちょっとしたツールを作り、仕事の自動化を図りましょう。
そして、余った時間をより有効に(^o^)
もっと詳しく知りたくなった人は、以下のサイトを参考にするとよいで
しょう。Outlookの操作なども掲載されていて、おもしろいです。
参考)Ruby OLE解説ページ(“るびま”より)
http://jp.rubyist.net/magazine/?cmd=view&p=0004-Win32OLE&key=Excel