вернуть уникальные значения в таблицу с 2 столбцами, используя формулы Excel - PullRequest
2 голосов
/ 13 августа 2011

Я искал сеть и стековый поток, но не мог понять. = (* * Тысяча одна

Мой лист выглядит так:

R1  U1
R1  U1
R1  U2
R1  U3
R2  U2
R2  U2
R2  U3

Можно ли использовать формулу Excel для возврата

R1 U1,U2, U3
R2 U2, U3

Спасибо!

Ответы [ 3 ]

3 голосов
/ 13 августа 2011

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

Однако вы можете написать для этого функцию VBA, например:

Public Function FindSeries(TRange As Range, MatchWith As String) 

    For Each cell In TRange 
        If cell.Value = MatchWith Then 
            x = x & cell.Offset(0, 1).Value & ", " 
        End If 
    Next cell 

    FindSeries = Left(x, (Len(x) - 2)) 

End Function 

Вы можетенайти этот код и дополнительную информацию здесь: http://www.ozgrid.com/forum/showthread.php?t=25239&page=1

2 голосов
/ 13 августа 2011

сводная таблица

enter image description here

0 голосов
/ 13 августа 2011

Предположим, что ячейка, в которую вы вводите R1 или R2, является именованным диапазоном clVal. Если ваши данные, как указано выше, находятся в диапазоне A1: B7, добавьте вспомогательный столбец в C1: C7 следующим образом:

C1:  =IF($A$1=clVal,B1 & ", ","")
C2:  =IF($A2=clVal,$C1&IF(ISERROR(FIND($B2,$C1)),B2&",",""),$C1)
 copy this formula down to C7.

Наконец, нам нужно разделить тренировочную запятую, если она есть. Это можно сделать с помощью

=LEFT(C7,LEN(C7)-1*(RIGHT(C7,1)=","))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...