2017-01-24 4 views
1

Есть ли способ использования roo для получения координат ячейки (или просто строки), содержащей предопределенное значение?Roo - Поиск ячейки по содержанию

Например, имея ячейки А, 3 с содержанием "ЗДЕСЬ", мне нужно, передавая "ЗДЕСЬ", чтобы получить (А, 3) или только 3.

Спасибо.

+0

Я боюсь, что единственным вариантом является поиск файла для любой ячейки, содержащей это конкретное значение. – yorodm

ответ

0

Я использовал roo в первый раз сегодня, и он не чувствует себя рубистом вообще. Там может быть лучше, но этот код работал отлично на простом примере:

require 'roo' 

xlsx = Roo::Excelx.new("roo.xlsx") 

cell = xlsx.each_row_streaming.to_a.flatten.find do |c| 
    c.value.to_s.include?('hello') 
end 

if cell 
    p cell.coordinate 
    #=> #<Roo::Excelx::Coordinate:0x000000028ea6a0 @row=6, @column=1> 
    p cell.value 
    #=> "hello world" 
end 

Обратите внимание, что он читает всю таблицу, даже если первая ячейка является матч.

Смежные вопросы