1

У меня проблема с вводом индексов столбцов от 1 до 1220 в функцию VLOOKUP

{=SUM(VLOOKUP(A2,sheet1!$A$3:$AC$11, {1,2, 3, 4, 5, 6, ..., 1219, 1220}, TRUE))}

Единственное решение, которое я вижу для этого, - написать функцию VBA, которая будет принимать диапазон и возвращать массив целых чисел, но мне нужно избегать отправки файла Excel с макросами.

Есть ли другой возможный способ, основанный исключительно на функциях Excel?

пример листа:

Мне нужно сопоставить столбец A на листе 2 с столбцом A на листе 1, а затем сложить остаток строки.

И это должно работать так же, если лист 2 похож на следующее:

пример 2

2 ответа2

1

Используя ваши примеры данных (Примечание - я перепутал строки 2 и 3, чтобы вы могли видеть, что они выполняют поиск, а не просто занимают позиции):

Формула:

=SUM(INDEX(Sheet1!C:XFD,MATCH(A1,Sheet1!A:A,0),0))

Это суммирует все столбцы от C до XFD (последний возможный столбец в Excel 2007+), находя строку, соответствующую A1 в столбце A Sheet1.

0

Вместо ввода {1,2,3,...,1220} используйте ROW(A$1:A$1220) , поэтому, используя ваш пример, ваша формула выглядит следующим образом:

=SUM(VLOOKUP(A2,sheet1!$A$3:$AC$11,ROW(A$1:A$1220),TRUE))

Примечание. Эта формула возвращает ошибку, поскольку A3:AC11 не содержит 1220 столбцов.

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