У меня есть следующая информация в таблице
C D
----------- -----------
1 | 25% | 1 |
----------- -----------
2 | 50% | 2 |
----------- -----------
3 | 75% | 3 |
----------- -----------
4 | 100% | 4 |
----------- -----------
Если пользователь вводит в ячейку (A1) любое из значений в столбце D, ячейка (B1) отобразит число в столбце C.
Для достижения этого я использую следующую функцию
=ЕСЛИ(A1=D1,C1,ЕСЛИ(A1=D2,C2,ЕСЛИ(A1=D3,C3,ЕСЛИ(A1=D4,C4))))
Есть ли более короткий способ сделать это, используя другую функцию?
решение1
То, что вы хотите, этофункцияVLOOKUP
. Во-первых, вам нужно поменять местами столбцы C и D, чтобы ваш «подстановочный» столбец оказался в C, а возвращаемые значения — в столбце D. Затем в ячейке B1 используйте следующую формулу:
=VLOOKUP(A1, C1:D4, 2)
Изменение значения в ячейке A1 между 1 и 4 должно вернуть правильный процент. Например, если вы поместите приведенную выше формулу в ячейки B1 и B2 и заполните константы для всех остальных ячеек, вы должны увидеть:
| A B C D
-----------------------
1 | 4 100 1 25
2 | 1 25 2 50
3 | 3 75
4 | 4 100
решение2
Оставьте то, что у вас было. Просто используйте формулу ниже:
=ИНДЕКС(C1:D4,НАИМЕНЬШИЙ(D1:D4,A1),1)
Коротко, просто и не нужно менять формат. Index — это функция vlookup/hlookup (vlookup — автоматическая, а index — это палка в машине). Small просматривает список, а 2-й параметр смотрит на то, какой ранг вы поставили, т. е. «1», «2», «3» и т. д.