Ruby on rails 4 Axlsx格式

Ruby on rails 4 Axlsx格式,ruby-on-rails-4,axlsx,Ruby On Rails 4,Axlsx,可以同时设置行和列的格式吗 例如,我在做一个循环,使用索引根据行是偶数还是奇数来设置不同颜色的行的样式,但我还想设置一个列的样式,该列的百分比使用:num_fmt=>9 还有,为什么当我将数字表示为1.2时,最终会将其更改为120%,我只希望数据看起来像1.2% @people.each_with_index | person, index | if index.odd? sheet.add_row [person['name'], person['rate']] else sheet.add_

可以同时设置行和列的格式吗

例如,我在做一个循环,使用索引根据行是偶数还是奇数来设置不同颜色的行的样式,但我还想设置一个列的样式,该列的百分比使用:num_fmt=>9

还有,为什么当我将数字表示为1.2时,最终会将其更改为120%,我只希望数据看起来像1.2%

@people.each_with_index | person, index |
if index.odd?
sheet.add_row [person['name'], person['rate']]
else
sheet.add_row [person['name'],person['rate']], :style => even_row
end
end

(我的偶数行样式设置在代码的顶部)

我发现了这一点,您需要使用

percent = s.add_style(:num_fmt => 9)
even_row_percent = s.add_style(:bg_color => 'blue', :fg_color => 'white', :b => false, :format_code => 0%)
even_row = s.add_style(:bg_color => 'blue', :fg_color =>'white', :b => false)
然后在循环中使用each with index,然后使用if语句,如

if index.odd
 sheet.add_row[
 item[:value], 
 item[:value_percent]], :style => [nil, percent]
else
 sheet.add_row[
 item[:value], 
 item[:value]], :style => [even_row, even_row_percent]
end