Есть три наименования, у каждого их которых несколько тысяч значений. Но некоторые наименования могут не иметь значения в определенной строке.
Необходимо найти минимальное значение из трех и вывести имя, соответствующее минимальному значению. Если данные для всех трех наименований есть, то это не проблема (формула прописана, но, возможно, есть более простое решение), но вот если по одному из значений нет данных, то итоговая формула возвращает ошибку (а надо, чтобы сравнивались два имеющихся значения и их них выдавалось наименьшее).
P.S. Не в ту тему запостил, прошу перенести в Вопросы по Excel
P.P.S. Нашел простое решение - поменять #Н/Д на прочерк и всё решается, но если массив содержит не только #Н/Д, но и другие символы, как тогда быть?
Есть три наименования, у каждого их которых несколько тысяч значений. Но некоторые наименования могут не иметь значения в определенной строке.
Необходимо найти минимальное значение из трех и вывести имя, соответствующее минимальному значению. Если данные для всех трех наименований есть, то это не проблема (формула прописана, но, возможно, есть более простое решение), но вот если по одному из значений нет данных, то итоговая формула возвращает ошибку (а надо, чтобы сравнивались два имеющихся значения и их них выдавалось наименьшее).
P.S. Не в ту тему запостил, прошу перенести в Вопросы по Excel
P.P.S. Нашел простое решение - поменять #Н/Д на прочерк и всё решается, но если массив содержит не только #Н/Д, но и другие символы, как тогда быть?VadimVV
1). Простой - обернуть рассчитываемые в первых 3-х столбцах значения в ЕСЛИОШИБКА. 2). Хитрый - применить МАССИВНУЮ формулу как во вложении (ввести в верхнюю ячейку через Контрол + Шифт + Ентер, потом протянуть по ячейкам):
Где вместо 999 можно подставить заведомо недостижимо высокое значение.
VadimVV, здравствуйте.
Предлагаю два варианта:
1). Простой - обернуть рассчитываемые в первых 3-х столбцах значения в ЕСЛИОШИБКА. 2). Хитрый - применить МАССИВНУЮ формулу как во вложении (ввести в верхнюю ячейку через Контрол + Шифт + Ентер, потом протянуть по ячейкам):
А как у Вас вообще формируются значения в таблице? Дело в том, что ЕСЛИОШИБКА(), которую Вам советовал Rioran, применяется на этапе вычисления значения в ячейке. Например, =А1/С1 при С1=0 выдаст ошибку, а =ЕСЛИОШИБКА(А1/С1;"") - пустую ячейку. И что Вы называете "разнообразным буквенным мусором"? Короче, создается впечатление, что приложенный Вами пример имеет мало общего с реальной задачей, откуда и невозможность дать вразумительный совет.
А как у Вас вообще формируются значения в таблице? Дело в том, что ЕСЛИОШИБКА(), которую Вам советовал Rioran, применяется на этапе вычисления значения в ячейке. Например, =А1/С1 при С1=0 выдаст ошибку, а =ЕСЛИОШИБКА(А1/С1;"") - пустую ячейку. И что Вы называете "разнообразным буквенным мусором"? Короче, создается впечатление, что приложенный Вами пример имеет мало общего с реальной задачей, откуда и невозможность дать вразумительный совет.МВТ
Цифровые значения - это значения цены в зависимости от наименования продукции от разных поставщиков. При отсутствии продукции, разный поставщик пишет по разному. "Нет", "отсутствует", "продано" и так далее. Если перечни продукции сравнивать ВПРом, то проблем нет - там где #Н/Д можно заменить на любые символы. А вот если имеется массив, в котором 5000 строк, и 50-70 столбцов, то там уже сложнее применять автозамену.
Под рукой сейчас такого файла нет, но, думаю, описанное наполнение файла понятно.
Цифровые значения - это значения цены в зависимости от наименования продукции от разных поставщиков. При отсутствии продукции, разный поставщик пишет по разному. "Нет", "отсутствует", "продано" и так далее. Если перечни продукции сравнивать ВПРом, то проблем нет - там где #Н/Д можно заменить на любые символы. А вот если имеется массив, в котором 5000 строк, и 50-70 столбцов, то там уже сложнее применять автозамену.
Под рукой сейчас такого файла нет, но, думаю, описанное наполнение файла понятно.VadimVV
Так используйте в таблице =ЕСЛИОШИБКА(Ч(А1)/Ч(С1);""). Функция Ч() вернет либо число, (если в ячейке, на которую она ссылается содержится число), либо 0 (если там, например, текст). Дело ведь не в ВПР(), а в наполнении таблицы
Так используйте в таблице =ЕСЛИОШИБКА(Ч(А1)/Ч(С1);""). Функция Ч() вернет либо число, (если в ячейке, на которую она ссылается содержится число), либо 0 (если там, например, текст). Дело ведь не в ВПР(), а в наполнении таблицы МВТ