Лучший отвечающий
Формула в ячейку Excel (C#)

Вопрос
-
Мне необходимо записать в ячейку формулу "СУММ(D5:D77)". Пишу следующий код:
excelWS_1_3.Cells[r, 4].Value = $"=СУММ(D{r0}:D{r - 1})";
И в итоге он добавляет знак "@" перед формулой: "=@СУММ(D18:D56)". Из-за этого знака формулы перестают работать. Как это исправить?
23 января 2023 г. 18:58
Ответы
-
Нужно вместо .Value присваивать .Formula или .FormulaLocal (https://learn.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.range.formulalocal?view=excel-pia#microsoft-office-interop-excel-range-formulalocal).
- Помечено в качестве ответа АлексейТ 25 января 2023 г. 16:25
25 января 2023 г. 10:01
Все ответы
-
Здравствуйте,
Посмотрите эту тему, проблема вроде идентичная:
How to remove @ character in formula in excel
Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Предложить как ответ" или "Проголосовать за полезное сообщение" Мнения, высказанные здесь, являются отражение моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.
24 января 2023 г. 11:11Модератор -
Нужно вместо .Value присваивать .Formula или .FormulaLocal (https://learn.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.range.formulalocal?view=excel-pia#microsoft-office-interop-excel-range-formulalocal).
- Помечено в качестве ответа АлексейТ 25 января 2023 г. 16:25
25 января 2023 г. 10:01 -
ДА!!! FormulaLocal работает! ))
Кстати, ни Formula, ни Formula2 не работает, только FormulaLocal, по крайней мере в моём случае
25 января 2023 г. 16:25