2013-06-08 2 views
0

На этот раз довольно сложная проблема с VBA.Сравнение и фильтрация Excel

У меня есть книга Excel с двумя листами; Данные и анализ.

Лист данных содержит столбец (T) с именами и столбцом с результатами (Y). Лист анализа содержит ячейку с именем (B1).

Я хочу найти столбец T таблиц данных для имени столбца на ячейке анализа B1. После идентификации ячеек с аналогичным значением мне нужно вывести содержимое столбца соответствующих результатов. Столбец результатов имеет три возможных значения; 1, 2 или 3. Я хочу показать общее происхождение каждой возможности.

Пробовал макросов и ВПР, однако попасть в неприятности при попытке получить значение результирующего столбца :(

с нетерпением жду ваших ответов!

С уважением,

Pranav

+0

«Похожие» означает, что именно? –

+0

Нужна дополнительная информация. Является ли имя в ячейке B1 a * column * name или значением, которое имеет совпадение в столбце T? Будет ли имя в B1 иметь несколько совпадений в столбце T? Хотите ли вы, чтобы в аналитическом листе отображалось количество входов 1, 2 и 3 для имен, которые соответствуют B1? Вы считали сводную таблицу? – chuff

ответ

0

Если вы создаете сводную таблицу с именами в столбце T в качестве значения строки и значениями в столбце Y в качестве значения столбца, а значение «count of Y» в качестве значения в таблице, вы можете посмотреть количество любое число с VLOOKUP в это ta BLE. Простой пример:

Count of number number   
name   1 2 3 Grand Total 
a     1 2 1 4 
b     3 3 2 8 
d     2 3 1 6 
f     3 6 2 11 
g     4 3 2 9 
h     1 3 1 5 
j     1 3 2 6 
v     1 1 1 3 
Grand Total  16 24 12 52 

Как вы можете видеть, это было бы легко сделать ВПР в эту таблицу и получить ответ. С кончиком шляпы к @chuff, который предложил что-то подобное в комментарии.

+0

@Tim: Аналогичное совпадение. – Babu

+0

@Chuff: имя в ячейке B1 - это значение, совпадающее со значениями в столбце T. В столбце Y (1, 2 или 3) будет несколько совпадений с одним числом. Хотя сводная таблица может работать, она не решает проблему, так как я ищу с другого листа и нуждаюсь в результатах, отображаемых там. – Babu

+0

@babu: пока вы делаете VLOOKUP на листе, где вы хотите получить результат, вы увидите результат там. Вы создаете сводную таблицу на отдельном листе и называете диапазон (четыре столбца шириной, включая только строки с именами, а не заголовки столбцов, а не итоговые значения) «pivot1»: тогда на листе результатов вы пишете '= VLOOKUP (B1, pivot1, 2)', чтобы получить количество единиц. Повторите с цифрами 3 и 4 в последнем параметре, чтобы получить количество двух и трех. – Floris

0

если у вас есть Excel 2007 или более поздней версии, то вы можете использовать COUNTIFS

для примера, я бы поставил =COUNTIFS(T:T,B1,Y:Y,1) и изменить 1 на 2 и 3 для других столбцов

Если у вас есть Excel 2003 или раньше, тогда вам нужно будет использовать SUMPRODUCT, чтобы получить тот же результат, а также определить диапазоны с определенным диапазоном, а не ссылаться на весь столбец.
, например. =SUMPRODUCT(--(T1:T300=B1),--(Y1:Y300=1))

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