Я совсем новичок в Excel. Мне нужна помощь в подсчете уникальных значений в каждом из трех столбцов (рассматривая их только по одному за раз) относительно родительского столбца (первый (A) на изображении). Можете ли вы мне помочь? Спасибо!
Редактировать: Если я создаю сводную таблицу, она не выдает мне количество отдельных столбцов, а показывает последний столбец.
Источник данных:
Данные результата после преобразования:
Источник
A B C D
p d g k
p e g k
q d h k
q f h o
r d h o
r e i m
r f h m
s d i n
s d i o
s f i o
Результат
A B C D
p 2 1 1
q 2 1 2
r 3 2 2
s 2 1 2
решение1
Строим список столбцаАуникальные и поместите их в столбецЭа затем выполнить ряд циклов для подсчета уникальных значений в других столбцах:
Sub Macro1()
Dim N As Long, i As Long
Dim c As Collection, v As Variant
Dim M As Long, j As Long, rc As Long
Dim K As Long
Columns("A:A").Copy Columns("E:E")
Range("E:E").RemoveDuplicates Columns:=1, Header:=xlNo
rc = Rows.Count
M = Cells(rc, "A").End(xlUp).Row
N = Cells(rc, "E").End(xlUp).Row
For i = 1 To N
v = Cells(i, "E").Text
For K = 2 To 4
Set c = Nothing
Set c = New Collection
For j = 1 To M
If v = Cells(j, "A").Text Then
On Error Resume Next
c.Add Cells(j, K).Text, CStr(Cells(j, K).Text)
On Error GoTo 0
End If
Next j
Cells(i, K + 4).Value = c.Count
Next K
Next i
End Sub