[#39948] exit in Ruby/GTK window — NAWATE Masahiko <strike@...>

縄手@松江です.

31 messages 2004/08/10
[#39949] Re: exit in Ruby/GTK window — Masao Mutoh <mutoh@...> 2004/08/10

むとうです。

[#39973] 初心者向けの意見交換の場は?簡単な質問はどこにすればよいでしょうか。 — "Hisashi Yahata" <yahatah@...> 2004/08/26

60歳間近になった素人ですが、rubyに興味をもち、勉強を始めました。

[#40526] procの動作について(質問) — "Hisashi Yahata" <yahatah@...> 2005/01/13

[ruby-list:39977] Re: 初心者向けの意見交換の場は?簡単な質問はどこにすればよいでしょうか。

From: "Hisashi Yahata" <yahatah@...>
Date: 2004-08-26 06:00:15 UTC
List: ruby-list #39977
たけ(tk)様

 説明不足でしたので、再度の質問で恐縮ですが、もしご存知でしたらご教示くださ
い。

>> 例えば、質問例は、エクセルデータを読み込み、その内容が「数値」か「文字」
か
>> [nil」かを判定する方法です。数値であれば計算し、文字の場合にはその文字を
使う
>> ためですが、簡単なスクリプトがあると思うのですが、簡単にみつかりません。

>いろいろな方法がありそうですが、簡単なのはエクセルで SaveAs(名前を付け
>て保存)で csv(comma separated value、http://e-words.jp/w/CSV.html)形
>式で保存すると、コンマで区切られたテキストとして保存されるので、それを
>ruby で読込んで処理する方法でしょう。
ご教示有り難うございました。しかし、私の場合、csvに変換する手間を省き、下記
のようにエクセルファイルから直接に呼び込み処理したいと考えています。
その方法は、下記のスクリプトです。そこで、得られたd[i][j]の判定方法によい方
法はないでしょうか。

## Excelのデータを読み込む
module Excel
  def data(excelfilename,waku="A1:F374",sh=1)
    require 'win32ole'
    excel = application = WIN32OLE.new('Excel.Application')
    book= excel.Workbooks.Open(excelfilename)
    sheet = book.Worksheets(sh)        # select worksheet number 1
    a = sheet.Range(waku).Value      # get the contents
    book.Close
    a
  end
end
require 'excel'  # excel.rbのスクリプトがここに記述されていると同じ扱いにな
る。
include Excel    # 上記中にmodule Excelがある。これをMainにも使えるようにす
る。
  excelfilename="cal.xls"
  waku="A1:F26"
  sheet=1
  d = data(excelfilename,waku,sheet)
# p d
for i in 0..25
    for j in 0..5
   	 print d[i][j],"\t"
    end
print "\n"


In This Thread