Анализ Excel и Google Docs Spreadsheet с заголовками или заголовками столбцов - PullRequest
2 голосов
/ 22 мая 2011

У меня есть файлы электронных таблиц Excel или Google Docs, которые мне нужно проанализировать.Столбцы могут быть упорядочены по-разному от файла к файлу, но всегда есть заголовок в первой строке.

Я ищу способ использовать заголовки столбцов в ссылках на ячейки при чтении файла с Roo или другим аналогичным образомсамоцвет.

Вот что я хотел бы сделать

Получить 4-й столбец для столбца под названием Widget Count независимо от положения столбца:

thisWidgetCount = cell[4,'Widget Count'];

Я понимаю, что могу просто пройтись по столбцам и создать хэш заголовка для имени столбца, но похоже, что это, скорее всего, кто-то уже обернул в библиотеку.

1 Ответ

4 голосов
/ 22 мая 2011

Вы можете расширить Roo или просто написать в качестве помощника:

oo = Openoffice.new("simple_spreadsheet.ods")
this_widget_count = tcell(oo, 3, 'Widget Count')

def tcell(roo, line, column_title)
  column = first_column.upto(last_column).map{ |column| roo.cell(1, column) }.index( column_type ) + 1
  roo.cell(line, column)
end

И, конечно, лучше предварительно загрузить все заголовки в массиве, потому что в нашем случае вы выбираете заголовки каждый раз (иэто плохая идея в исполнении)

...