![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]()
Есть нестандартная задача:
по определнной формуле вычисляется величина (число, дробное, положительное). Эту величину необходимо привести к значению максимально близкому из имеющегося массива значений (числа, целые, положительные, шаг изменения непостоянный). Сделать это надо одной формулой (что бы результат получить в пределах одной строки, т.к. следующая строка рассчитывает следующий параметр, который тоже надо приводить к данному массиву). КАГ? Если неясно изъяснился - требуйте объяснений. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]()
Предметнее: сделана таблица для максимально автоматизированного подсчёта сечений (площадей, длин, и т.п.) воздуховодов. Каждая строка расчитывает новый участок.
Рассчитать расчётное ![]() |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
![]()
Здравствуйте KASTCHEI.
даже после "предметного" объяснения у MS Excel не появится специализированная функция с помощью которой можно "Рассчитать расчётное сечение.." Скорее всего нужна пользовательская функция, т.е созданная специально для решения Вашей задачи. Поместите в модуль подобный код: Код:
надеюсь правильно понял задачу. Евгений. P.S. форум не "машина ответов", его участники люди, и выкладывая вопрос не забывайте обращаться к тем кому Вы его адресуете, не знаете как - можно просто поздоровавшись. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 13.01.2010
Сообщений: 410
|
![]()
ВПР с параметром 1 вернет ближайшее число которое меньше искомого.
А еще желательно пример с "есть вот" и "хочу так" |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 13.01.2010
Сообщений: 410
|
![]()
=ИНДЕКС(A1:A4;МИН(ЕСЛИ(ABS(C3-A1:A4)=МИН(ABS(C3-A1:A4));СТРОКА(A1:A4))))
формула массива (вводится Ctrl+shift+enter) A1:A4 - массив для поиска С3 - искомое значение |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]()
Здравствуйте KASTCHEI.
даже после "предметного" объяснения у MS Excel не появится специализированная функция с помощью которой можно "Рассчитать расчётное сечение.." Скорее всего нужна пользовательская функция, т.е созданная специально для решения Вашей задачи. Поместите в модуль подобный код: Код:
надеюсь правильно понял задачу. Спасибо за подсказку, Евгений, но вынужден признаться, что я в принципе не программист. Осваиваю всё самостоятельно и пока дальше написания макросов и перебирания формул мои успехи не доходили. Мне к сожелению не очень понятно, что же мне сделать. Ниже помещу пример таблицы и вариант своего промежуточного решения (полуполноценного). P.S. форум не "машина ответов", его участники люди, и выкладывая вопрос не забывайте обращаться к тем кому Вы его адресуете, не знаете как - можно просто поздоровавшись.[/QUOTE] Спасибо за совет. Учту. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]() |
![]() |
![]() |
![]() |
#8 | |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]() Цитата:
Работает так как надо. Но я пока не впёр логику. Если не трудно - объясните юродивому. Я так же искал наименьшую по модулю разницу между расчитанным параметром и стандартными. Но не знал как потом выбрать соответствующее значение. Пошёл таким путём: А6 - рассчитывемый параметр Писал формулу: =A6+МИН(ABS(80-A6);ABS(90-A6);ABS(100-A6);ABS(125-A6);ABS(140-A6);ABS(150-A6);ABS(160-A6)) То есть к расчитанному параметру добавлял наименьшую по модулю разницу. Но это не срабатывало с теми наименьшими по модулю разницами, которые были до приведения по модулю отрицательными числами. Их надо было прибавлять со заком "-", а как его запомнить и вернуть выбранному значению я не знал. |
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]()
Размещаю, как обещал, пример таблицы.
Но думаю, после того, как решение найдено (ещё раз спасибо Dophin), это вряд ли кого заинтерисует. Ещё раз прошу Dophin (если не затруднит) дать пояснения. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 11.02.2010
Сообщений: 17
|
![]()
Спасибо всем откликнувшимся.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод ко-ва элементов массива меньших заданного числа в C++ | xnise | Помощь студентам | 2 | 30.11.2009 19:25 |
Создание подпрограм.Передача массива как параметра процедуре | AbrahamLincoln | Помощь студентам | 5 | 20.09.2009 19:39 |
Выбор строки из заданного параметра | Antoha21 | Microsoft Office Excel | 3 | 24.07.2009 12:21 |
EXSEL (VBA) найти элемент наиболее близкий к среднему значению элементов массива | Lady_Deluxe | Помощь студентам | 0 | 16.06.2009 13:45 |