1

Описание ситуации:

У меня есть БД доступа, куда я экспортирую данные с помощью следующей команды в Excel:

DoCmd.TransferSpreadsheet

Экспорт работает, и данные экспортируются в существующий файл Excel в правильные столбцы (отсюда и использование верхней команды). Однако, что не работает, так это вычисления формул, используемых в других полях (поля, использующие данные обновленных полей).

Когда вы выбираете одно из этих полей с формулами и просто нажимаете ввод, он вычисляет правильные значения с полями, которые были обновлены базой данных доступа. Так что я предполагаю, что обновление полей с формулами не происходит, потому что внедрение данных не происходит, когда таблица Excel открывается в Excel. (поэтому пересчет полей с данными обновления не производится)

например:

Field 1 | field 2 | field 3(=Sum(Field1,Field2)
  • Поля 1 и 2 обновляются через Access через DoCmd-команду.
  • Поле 3 должно быть обновлено с расчетом новых значений.

Любые идеи о том, как я могу заставить обновления этих полей? (Field3)

1 ответ1

2

Проверьте режим расчета рабочей книги. Это установлено на "ручной"? Перейдите в Файл> Параметры> Формулы> и в разделе Параметры расчета убедитесь, что выбран "Автоматический".

Если это не сработает, выделите все ячейки на листе и нажмите F9, чтобы пересчитать файл.

Другая возможность состоит в том, что значения импортируются в виде текста, а не чисел, и формулы также находятся в текстовых ячейках. Убедитесь, что ячейки имеют формат, отличный от "Текст", например, "Общий".

Для принудительного пересчета, если F9 не работает, выделите ячейки с формулами, затем нажмите Ctrl - H, чтобы открыть диалоговое окно «Найти / заменить». В поле « Find What введите знак «=», а в поле « Replace with введите знак =. Затем нажмите кнопку « Заменить все». Это заменит все знаки = в выбранных ячейках и приведет к пересчету всех формул.

Если это не поможет, пожалуйста, опубликуйте образец данных, который показывает поведение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .