Как объединить vlookup и if else в Excel с использованием формул

#excel #if-statement #excel-formula #vlookup

#excel #оператор if #excel-формула #vlookup

Вопрос:

Я пытаюсь обновить бюджет ресурсов для поездок на листе 1 с их расходами на день в листе 2. Я должен сначала проверить город назначения, а затем получить расходы на их поездку из листа 2 на основе количества дней, из которых они путешествуют (указано в листе 1). Итак, сначала должен быть сопоставлен адрес назначения, как только мы получим номер строки (с листа 2), затем необходимо получить количество дней с листа 1 и на основе количества дней получить расход с листа 2

Лист 1

 Destination        No of Days     Total expenses(output) 
City 1               1              150 
City 2              3.5             200 
City 3               2              400 
  

Лист 2

 Destination  Day 1  Day 2   Day 3   Day 4 
City 2       100    150     175    200   
City 1       150    250     350    450   
City 3       200    400     600    800   
  

Я пытался использовать vlookup и вложенную формулу if для каждой, но я не могу получить количество дней

(IF(A2=Sheet2!$A$2,Sheet2!$B$2,IF(A3=Sheet2!$A$3,Sheet2!$B$3,IF(A4=Sheet2!$B$4,Sheet2!$B$4))))

Результат указан в описании. Столбец «Общие расходы» в листе 1 является ожидаемым результатом.

Ответ №1:

Вместо VLookUp попробуйте Index Match

 =INDEX(Sheet2!$B$2:$E$4,MATCH($A2,Sheet2!$A$2:$A$4,0),$B2)
  

Ответ №2:

Кроме того, вы можете использовать:

 =SUMPRODUCT((Sheet2!$A$2:Sheet1!$A$4=A2)*(Sheet2!$B$1:$E$1="Day " amp; ROUNDUP(B2,0)),Sheet2!$B$2:$E$4)