0 / 0 / 0
Регистрация: 20.03.2015
Сообщений: 29
|
||||||
1 | ||||||
Функция на подбор параметра22.06.2015, 15:20. Показов 3331. Ответов 6
Метки нет (Все метки)
Есть три ячейки: параметр, функционал, зависящий от параметра, и значение. Необходимо написать пользовательскую функцию, аргументами которой являются эти 3 ячейки. Функция должна возвращать значение параметра, при котором функционал достигает значения. При этом сам параметр не изменяется. Я написала так:
Плиз, хелп!
0
|
22.06.2015, 15:20 | |
Ответы с готовыми решениями:
6
Сделать цикл функции "Подбор параметра" на большое количество строк Функция, которая получает два параметра и возвращает результат деления первого параметра на второй Подбор параметра Подбор параметра |
15 / 15 / 5
Регистрация: 01.12.2014
Сообщений: 117
|
|||||||||||
22.06.2015, 15:56 | 2 | ||||||||||
Если честно, я не особо понял, что у вас не работает.
в тебе макроса пишете
1
|
0 / 0 / 0
Регистрация: 20.03.2015
Сообщений: 29
|
||||||
22.06.2015, 16:12 [ТС] | 3 | |||||
Я пишу =goal(A2;B1;B2) и возвращается #ЗНАЧ!.
Макросы не смогут работать, т.к. нужные ячейки на разных страницах, разных столбцах и строках. Чтобы это все сделать менее ручным и нужна функция. Идея в том, что мне нужно в определенной ячейке написать =goal (ячейка1; ячейка2; ячейка3) и в ней появится значение параметра, который при подстановке в функционал, приведет его к нужному значению. При этом сам параметр и значение функционала остаются неизменными. Например, есть цена и выручка. Эти значения настоящие и показывают картину сейчас. Мы хотим найти значение цены, при которой выручка будет, например 1000. И это значение должно быть в другой ячейке, на другом листе, т.к. показывает параметр не сейчас, а какой он мог бы быть. У меня кажется объяснялка сломалась)) Добавлено через 3 минуты Переписала так:
Добавлено через 40 секунд Т.е. возвращает 1 вместо 2,893434 которое должен
0
|
15 / 15 / 5
Регистрация: 01.12.2014
Сообщений: 117
|
|||||||||||
22.06.2015, 16:18 | 4 | ||||||||||
потому что
Эммм ещё один момент - ваша функция не вернёт ничего, потому как все вычисления присваиваются переменной а
1
|
0 / 0 / 0
Регистрация: 20.03.2015
Сообщений: 29
|
|
22.06.2015, 16:27 [ТС] | 5 |
Вот это-то и непонятно. а - это просто переменная типа булеан получается. Т.к. GoalSeek() возвращает либо True либо False.
Если программу запускать пошагово, то подбор параметра вообще весело происходит, он все время скачет и непонятно, как с этим справится, т к тогда начальные значения никак не сохраняются - это про byVal
0
|
15 / 15 / 5
Регистрация: 01.12.2014
Сообщений: 117
|
|
22.06.2015, 17:18 | 6 |
Я всё ещё не могу разобраться как сделать то, что вы хотите внутри функции.
Добавлено через 22 минуты Я вас всё-таки вынужден огорчить, мне не удалось внутри процедуры заставить функцию работать, как и написано в справке - она возвращает только TRUE или FALSE.
1
|
призрак
|
|
22.06.2015, 18:39 | 7 |
у функций, написанных на VBA и вызываемых с листа, есть ограничение - они не могут менять ячейки.
никаким образом. а вызываемый внутри Вашей функции подбор параметра - меняет.
1
|
22.06.2015, 18:39 | |
22.06.2015, 18:39 | |
Помогаю со студенческими работами здесь
7
Подбор параметра Подбор параметра Подбор параметра Подбор параметра Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |