Автоматически поле формулы обновления после генерации Открывает документ XML Word

У меня есть библиотека, которая генерирует документы Word с помощью OpenXML SDK, одна из технических возможностей библиотеки является поколением таблиц с формулами на последней строке (такой как SUM(ABOVE)).

Word имеет эти встроенные функции, но при генерации документа я должен предположить, что Word не установлен на машине.

Проблема состоит в том, что, если я просто генерирую таблицу и поле формулы, она не будет обновлена автоматически, когда документ будет открыт, пользователь должен был бы открыть документ и вручную выбрать "поле обновления" для функции, которая будет вычислена.

Там какой-либо путь состоит в том, чтобы сделать это в рамках кода (не имея необходимость вычислять функцию вручную)?

6
задан Todd Main 22 July 2010 в 17:53
поделиться

1 ответ

Нет, это сделано намеренно. Подробнее см. Какие поля обновляются при открытии, повторной компоновке или печати документа .

Это верно и для любого ручного ввода (например, если у вас было 10 в A1, 10 в A2, вставлено = СУММ (ВЫШЕ) в A3, у вас будет 20. Но если вы измените A1 до 15, A3 не будет обновляться автоматически, пока вы не сделаете это вручную).

Единственный способ обойти это - создать надстройку (VSTO, VBA и т. Д.) Для обработки события Document_Open на клиентских машинах и запустить некоторый код для обновления всех полей или создать приложение взаимодействия. на сервере, который открывает документ, отображает его с помощью некоторого кода, а затем сохраняет его обратно перед отправкой дальше.

6
ответ дан 16 December 2019 в 21:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: