Как заставить Excel отображать научную нотацию c через EPPlus? - PullRequest
0 голосов
/ 27 февраля 2020

Можно ли каким-либо образом управлять отображением числа в научной нотации c, используя библиотеку EPPlus для создания файла Excel в C#?

worksheet.Cells[row, col].Value = someValue; //example value: 0.0000152691
worksheet.Cells[row, col].StyleName = RegularCenterAlign;
worksheet.Cells[row, col].Style.Numberformat.Format = "WHAT DO I PUT HERE???";

Я попытался «0,00e0» для формата, и в результате Excel выдавает ошибку:

enter image description here

Я не сделал Вы не увидите этого в документации, но если вы посмотрите в Excel параметры форматирования, доступна нотация scientifi c, так что вы можете подумать, что у EPPlus есть строковый код, который мы могли бы использовать для этого.

То, что сейчас происходит, - это то, что Excel сам решает, форматировать ли данное число в научной нотации c. Тот же код вставил все цифры в следующем скриншоте. Не указан формат, но вы можете видеть, что последний не использовал нотацию scientifi c.

enter image description here

1 Ответ

0 голосов
/ 27 февраля 2020

Использование:

ws.Cells["A1"].Style.Numberformat.Format = "0E+00";

Вы можете добавить число десятичных дробей примерно так:

ws.Cells["A1"].Style.Numberformat.Format = "0.0000E+00";

Не забывайте, что ваше значение должно быть цифрой c. Это значение будет отформатировано:

ws.Cells["A1"].Value = 0.0000152691;

это значение не будет:

ws.Cells["A1"].Value = "0.0000152691";
...