2014-01-07 2 views
0

я иметь следующую формулунанизывания VLOOKUPs

=SUM(IF(A1<>"",VLOOKUP(J3,M3:N7,2,FALSE),0),IF(...),IF(...),...) 

, которые эффективно суммирует значения в таблице ВПР, связанной со словами, в конкретных клетках (например, А1). Цель состоит в том, чтобы получить сумму значений для строк, содержащих переменное количество слов, где каждое слово имеет определенное значение. Например, одна строка может содержать 4 слова, а другая может содержать 22. Я хотел бы выяснить способ сделать это в VBA, чтобы вместо того, чтобы просто писать достаточно операторов IF() для учета максимального количества слов, любая строка в моем наборе строк Excel умеет просто подсчитывать до достижения пустой ячейки, суммировать значения всех VLOOKUP, выполняемых на непустых ячейках, и останавливаться. Кто-нибудь сможет мне помочь, как это сделать?

+1

Это может сделать ваш вопрос более ясным, если вы поместите некоторые значения образца или даже таблицу. – Jerry

+0

Да, что можно сделать в VBA с циклом while. У вас еще что-то началось, вы получаете сообщение об ошибке? –

+0

@Jerry Извинения за поздний ответ. Я добавлю таблицу. – 114

ответ

4

Вместо использования большого количества vlookups, почему бы не использовать формулу с одним массивом с sumif?

Я создал следующую тестовую таблицу:

A B C D 
1 xz zt bg 
2 
3 bg 12 
4 xz 24 
5 zt 55 

для поиска значений A-C в приведенной ниже таблице, и суммировать их значение, я использовал формулу, как это в колонке D: =SUM(SUMIF($A$3:$A$5,A1:C1,$B$3:$B$5)). Удостоверьтесь, что ctrl + shift + введите, так что это формула массива и стрела! все готово.

Это будет работать отлично, даже если переменное количество ячеек в столбцах AC (или, как многие из вас может быть) содержит данные ... Единственное предостережение в том, что оно предполагает, что каждое слово имеет только одну запись в таблице поиска , но я полагал, что это было безопасное предположение. Короче говоря, нет необходимости входить в VBA для этого.

+0

Поскольку ваше предложение работает очень хорошо, я думаю, что, вероятно, я просто должен забыть о таблице Google. Спасибо за вашу помощь! – 114

+1

В основном для понимания требования +1. – pnuts

Смежные вопросы