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

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

Как я могу поделиться шаблонными формулами между листами так, чтобы в целях удобства обслуживания любые изменения можно было легко распространить на все листы?

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

Пример:

Лист 1:

User value    | 12345
Computation 1 | 29239
Computation 2 | 3103
Computation 3 | 3941

Лист 2:

User value    | 12346
Computation 1 | 23091
Computation 2 | 3092
Computation 3 | 3111

где вычисления 1, 2 и 3 являются функциями User Value .

Идея состоит в том, что если, например, я решу изменить способ вычисления 2, я могу сделать это один раз в централизованном месте, а не один раз на листе.

1 ответ1

1

Я не знаю, как сделать это напрямую без VBA. Но если вы выберете все листы, которые необходимо изменить, то изменение его на одном листе распространит изменение на все листы. (Я не часто выбираю несколько листов, но это либо Ctrl+ клик, либо Shift+ клик на вкладках. Я думаю, что Ctrl+ щелчок выбирает отдельные листы, а Shift+ щелчок выбирает все листы от выбранного листа до того, на который нажали.)

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

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