Как мне предотвратить преобразование чисел в научную нотацию?

#ruby-on-rails #axlsx

#ruby-on-rails #axlsx

Вопрос:

На своем рабочем листе я делаю что-то вроде

  sheet.add_row [c.date,c.specialtext], style: header
  

где c.specialtext может быть действительно длинным целым числом или некоторым текстом. Когда бы это ни было int, число всегда преобразуется в научную нотацию. Есть ли стиль, который я могу добавить, который предотвратит это с помощью драгоценного камня axlsx?

Комментарии:

1. Попробуйте добавить num_fmt: 1 к своему header стилю

2. Эй, я попробовал то, что вы сказали, и это останавливает научную запись, но начинает округлять число, если оно действительно длинное. Когда у меня есть: 234817234891234912471298347243, на листе Excel показано: 234817234891235000000000000000

Ответ №1:

Вы можете обрабатывать это как строку:

 sheet.add_row [c.date,c.specialtext], style: header, types: [:string]