Рассчитать процентиль с помощью EPPlus - PullRequest
0 голосов
/ 24 октября 2019

Я пытаюсь использовать либо PERCENTILE.EXC, PERCENTILE.INC или PERCENTILE.

Глядя на FormulaParserManager.GetImplementedFunctionNames (), они не являются реализованными функциями.

Интересно, смогу ли яустановить формулу и оставить его в Excel для расчета. До сих пор у меня не работает это, и я получаю #NAME? и « Формула содержит нераспознанный текст ». Простое нажатие на панели формул приводит к правильному вычислению формулы.

Проверка внутренних частей файла Excel, который я создаю (через EPPlus):

_xludf.PERCENTILE.EXC(B14:B113,0.95)

, тогда как в Excel я получаю:

_xlfn.PERCENTILE.EXC(A14:A113,0.95)

Я думаю, что это определенная пользователем функция против функции. Я пробовал префикс "_xlfn."к моей строке формулы.

Насколько я понимаю, мне нужно либо свернуть свой собственный расчет процентиля в коде, либо манипулировать XML в файле Excel.

Любойпомощь оценена.

1 Ответ

0 голосов
/ 24 октября 2019

Doh! Я провожу весь день, застряв, оставив вопрос здесь, а затем сразу же обдумай ответ ...

В любом случае, если кому-то будет интересно:

var row95 = percentile95RowLookup[profileKey];
var percentileRange = sheet.Cells[row, i, row+ profileCollection.Profiles.Count-1, i];
sheet.Cells[row95, i].Formula = $"_xlfn.PERCENTILE.INC({percentileRange.Address},0.95)";

С важным условием, что workbook.CalcMode isне руководство.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...