Google Sheets VLOOKUP не использует формулу массива - PullRequest
0 голосов
/ 09 июля 2019

Я пытаюсь заполнить строки данных из другого листа, используя VLOOKUP и ARRAYFORMULA.

Вот данные, где я использую arrayformula:

Cells with arrayformula

G2 имеет формулу:

=arrayformula(if(ISBLANK(E2:E),"",VLOOKUP(E2:E,'Product List'!$A$2:$C,2)*F2:F))

А вот «Список продуктов» с другого листа:

Product List

Как видите, он вводит неправильные числа:

enter image description here

Что не так с моим arrayformula что заставляет это делать это?

Ответы [ 2 ]

3 голосов
/ 09 июля 2019

Если содержимое в столбце E не является точным совпадением с чем-либо в столбце A, оно получит наиболее близкое соответствие.Если вы не хотите этого, вы можете исправить это, добавив FALSE в качестве четвертого параметра в VLOOKUP.При добавлении FALSE, как показано ниже, ячейки, которые не совпадают, будут отображаться как #N/A вместо неправильного числа.

=ARRAYFORMULA(IF(ISBLANK(E2:E),"",VLOOKUP(E2:E,'Product List'!$A$2:$C,2,FALSE)*F2:F))

Кроме этого, я не понимаю, почему формула не будет 'т работа.

0 голосов
/ 09 июля 2019

просто небольшая модификация приведенного выше ответа для учета возможных ошибок и вывода ненужных элементов синтаксиса, чтобы сделать его короче

=ARRAYFORMULA(IF(E2:E="", , IFERROR(VLOOKUP(E2:E,'Product List'!A2:C, 2, 0))*F2:F))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...