Расширение:

У нас есть определенные цены для 4 специальных клиентов. Чтобы помочь подтвердить фактурирование, я пытаюсь остановить человеческую ошибку. Если в первом столбце указана определенная компания, то в ячейке 5 необходимо отразить правильную цену. Цена зависит от того, сколько дней запрос на => 3, = 2 или = <1. Так что это 3 цены, 4 компании и головная боль ...

eg1 Я не могу добавить больше аргументов:

=IF(X30="skanska","110",IF(X30="conway","95",IF(X30="cappagh","90",IF(X30="","80","100"))))

eg2 опять слишком много аргументов:

=IF(AC18>=3,IF(X18="skanska","110","70 "),IF(X18="conway","90"," 60"))

Я немного растерялся ...

Теперь я пытаюсь взглянуть на vlookup и пытаюсь сочетать его с оператором if .

например, у меня возникли проблемы при объединении двух:

=VLOOKUP(A31,vtable_area,4,0)

1 ответ1

0

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

Тогда ваша формула VLOOKUP может выглядеть примерно так:

=VLOOKUP(Customer,VTable,Days+1,FALSE)

Где "Клиент" - это столбец ваших данных с именами клиентов в (А или где бы то ни было). Таким образом, будет найдена строка с соответствующим именем клиента, а затем возвращено значение из столбца, соответствующее количеству дней. +1 означает смещение, чтобы избежать первого столбца, в котором есть имена клиентов. Другими словами, значения для 1 дня находятся во втором столбце, 2 дня в третьем и т.д. Таким образом, ваши могут выглядеть примерно так:

=VLOOKUP(X31,Lookup_table_area,AC31+1,FALSE)

В идеале вы должны обернуть это в условие перехвата ошибок, чтобы вернуть значения для "стандартных" клиентов. Например:

=IFERROR(VLOOKUP(X31,Lookup_table_area,AC31+1,FALSE),999)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .