Есть ли способ создать список уникальных значений, извлеченных из более чем одного массива в excel или Google таблицах?

#excel #google-sheets #unique

Вопрос:

Могу ли я создать список уникальных значений из разных столбцов на разных листах? Это может быть в Excel или Google таблицах.

Что-то вроде:

=сортировка(уникальный(столбец 1,столбец 2,столбец 3,ложь,ложь))

Спасибо!

Ответ №1:

да для gs:

 =SORT(UNIQUE({Sheet1!A1:A100; B10:B30; Sheet5!C8:C}))
 

Ответ №2:

Скажем, у нас есть:

введите описание изображения здесь

и нам нужен отсортированный список элементов в обоих столбцах.

Сначала поместите следующее UDF() в стандартный модуль:

 Public Function stack(ParamArray arr()) As Variant
    Dim r As Range, arr_cnt As Long, i As Long, cell_cnt As Long
    Dim Liist, Li As Long, rr As Range, ic As Long, ir As Long
    Dim iir As Long, iic As Long
    
    arr_cnt = UBound(arr)
    cell_cnt = 0
    For i = 0 To arr_cnt
        Set r = arr(i)
        cell_cnt = cell_cnt   r.Count
    Next i
    
    ReDim Liist(1 To cell_cnt, 1 To 1)
    Li = 1
    
    For i = 0 To arr_cnt
        Set r = arr(i)
        ic = r.Columns.Count
        ir = r.Rows.Count
        If ic > 1 And ir > 1 Then
            For iic = 1 To ic
                For iir = 1 To ir
                    Liist(Li, 1) = r(iir, iic)
                    Li = Li   1
                Next iir
            Next iic
            
        Else
            For Each rr In r
                Liist(Li, 1) = rr.Value
                Li = Li   1
            Next rr
        End If
    Next i
    
    stack = Liist
End Function
 

UDF принимает группу диапазонов и создает массив значений, совместимый с одним столбцом. Выберите ячейку и введите:

 =SORT(UNIQUE(stack(A1:A6,C1:C5)))
 

введите описание изображения здесь