0

クエリを使用してRubyでExcelシート(.xls)の値を読み取る必要があります。これを行うためにルビーで利用できる宝石はありますか?もしそうなら、これについて私を助けてください。

これに関するヒントやアドバイスは素晴らしいでしょう。

ありがとうAnto

4

2 に答える 2

1

SequelとOLEDBを使用して、Excelファイルを読み取ることができます。

require 'sequel'
Encoding.default_external = 'utf-8' #needed for umlauts in excel

def read_excel(source)
  source = File.expand_path(source) #Full path needed

  db = Sequel.ado(:conn_string=>"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=#{source};Extended Properties=Excel 8.0;")
  # Excel 2000 (for table names, use a dollar after the sheet name, e.g. Sheet1$)
  p db.test_connection

  dataset = db[:'Tabelle1$']
  p dataset
  dataset.each{|row|
    puts row
  }
end #test_read

read_excel('my_spreadsheet.xls')

タブの名前を知っている必要があります(私の例ではTabelle1です


ここでの「実際の」ソリューションはSequelではなく、ADO-Interfaceです。私は他のORMに精通していないので、実際には役に立たないかもしれません。ただし、たとえばアクティブレコードを確認することもできます。

ヒント、ADOを介してMS-Accessまたはsqlserverに接続する方法があり、 ActiveRecordを使用するものもあります。私の続編の例で接続文字列をExcel-Stringに置き換えると、他のORMを使用できます。

ODBC接続を介してExcel-Dataを読み取ろうとすることもできます。

于 2013-03-25T11:19:05.700 に答える
0

spreadsheetgemを使用してExcelファイルからデータを読み取る

require 'spreadsheet'
doc = Spreadsheet.open('simple.xls')
sheet = doc.worksheet(0)  # list number, first list is 0 and so on...

val = sheet2[r,c] # read particular cell from list 0, r for row, c for column 

いくつかの情報があります。
ネット上の詳細については、Googleを使用してください。

于 2013-03-25T12:07:59.333 に答える