Я использую Excel 2010. Я хочу использовать формулу, определенную в одной ячейке, как если бы это была пользовательская функция.
Пример: В ячейку A1 я ввожу что-то вроде (я знаю, что это не настоящий синтаксис):
= 3 * Input + 15
А затем в B1 я буду использовать это так:
= A1(10)
И в С1:
= A1(20)
Я бы предпочел сделать это таким образом и не прибегать к написанию функции VBA. Возможно ли это? Если да, то как?
Спасибо.
решение1
Одним из решений является использование функции Excel Data Table. Таблица данных — это один из доступных вариантов анализа «что если» (в Excel 2007 — я не могу подтвердить это, но предполагаю, что он все еще есть в Excel 2010). Ниже приведен пример использования этой функции, которая должна быть полезной, поскольку файл справки Microsoft, по моему скромному мнению, содержит мало инструкций.
Чтобы использовать ваш пример, вы хотите рассчитать формулу = 3*Икс+15 для нескольких различных значенийИкс. Где B1
содержится некоторое фиктивное значениеИкс, введите следующее в C2
:
=3*B1+15
В ячейке B3 и ниже введитеИксзначения, которые вы хотите проверить.
Теперь, когда у вас есть структура для вашей таблицы данных, вы можете выполнить анализ «Что если». Выберите всю структуру вашей таблицы ( B2:C8
в этом примере, которая включает значения и формулу). Теперь на ленте «Данные» выберите «Анализ «Что если» -> «Таблица данных...». В диалоговом окне введите адрес вашей фиктивной ячейки, на которую ссылается ваша формула, в поле ввода «Столбец». (Если ваша таблица настроена горизонтально, а не вертикально, вам следует ввести адрес в поле ввода «Строка»).
Нажмите «ОК» и убедитесь, что ваша таблица заполнена соответствующими выходными значениями для каждого входного значения.
Хотя это решение может не предлагать той гибкости, которую может предложить UDF, я думаю, что оно по сути делает то, о чем вы просите. Формула вашего примера проста и может быть заполнена, но я предполагаю, что у вас есть свои причины использовать формулу таким образом. Таблицы данных идеально подходят для ситуаций, когда у вас много данных, зависящих от фиктивного значения, и формула, которую вы хотите оценить для разных значений, ссылается на эти зависимые данные. Например, я использовал эту функцию для генерацииROC-кривыебыстро, рассчитав чувствительность и специфичность при различных пороговых значениях.
решение2
Вы можете попробовать использовать определенные имена в формулах. После того, как вы определили формулу, вы можете использовать ее по имени повторно. Эта функция была добавлена, чтобы упростить повторное использование формул.
Вот ссылка на сайт MS Office, где вы найдете информацию о том, какопределять и использовать имена в формулах.
решение3
В новых функциях Excel вы можете создать надстройку Excel Custom Functions! Она позволяет вам определитьФункции Node.JSи использовать их повторно.
Microsoft предоставляетхороший уроко том, как использоватьЭй'sофисный генератор.