下面是我的代码,我尝试从 excel 表中查找文本并单击应用程序上的“文本”。完成后,我想将那个特定的单元格(文本所在的位置)涂成绿色。
require 'rubyXL'
require 'roo'
workbook = Roo::Spreadsheet.open(file_name)
workbook1 = RubyXL::Parser.parse(file_name) workbook.default_sheet='Left navigation'
worksheet1 = workbook1['Left navigation']
for j in (workbook.first_row..workbook.last_row)
for k in (workbook.first_column..workbook.last_column)
if(k==1)
choose("lookupSearch", :option => "Plan")
fill_in "searchInput", :with => workbook.cell(j,k)
find(:xpath, '//*[@id="searchicon"]').click
elsif(workbook.cell(j,k)=='.')
puts "Completed"
else
find('a', text: workbook.cell(j,k), :match => :prefer_exact)
worksheet1.sheet_data[j][k].change_fill ('008000')
end
end
end
错误消息是“nil:NilClass (NoMethodError) 的未定义方法‘[]’”
注意:当我使用 worksheet1.sheet_data[j-1][k-1].change_fill ('008000') 时没有错误。但单元格上仍然没有绿色。无法追踪。请指教