Я использую Office OpenXml для записи в файл Excel. Файл является шаблоном, поэтому он имеет все мои заголовки и форматирование для моих столбцов. Я вставляю числа, которые имеют ведущие нули в «специальный» столбец, который в основном представляет собой 10-значное число. Однако в моем коде я вижу, что он устанавливает значение, например, 0000000004
. Результат в листе со значением 4
в этой ячейке и фактическая ячейка, показывающая 0000000004
.Excel не вставляет ведущий ноль
Вот мой код для записи в ячейку.
if (reader[2].ToString().Length < 9)
{
myworksheet.Cell(firstrow, 12).Value = reader[2].ToString(); //0045678945
}
else
{
myworksheet.Cell(firstrow, 12).Value = reader[2].ToString().Substring(0, 9); //0045678945
}
, когда я открываю лист первенствовать, как я уже говорил выше моего значения является 45678945
вместо 0045678945
Любая помощь будет оценена.
Вы пробовали выполнить некоторую проверку на значение внутри Excel? Возможно, напишите макрос, который анализирует введенное значение, чтобы гарантировать, что он имеет правильное количество символов и добавляет начальные нули, если он не соответствует вашим критериям. Возможно, даже определите настраиваемый тип данных для этого столбца. –
Можете ли вы объяснить, что делает ваш код в приведенном выше примере, чтобы вызвать добавление нулей? Похоже, что вы установите ячейку на значение строки, когда длина меньше 9 - как вы делаете нули в этой строке? – Floris