Soy muy nuevo en Excel. Necesito ayuda para contar valores únicos en cada una de las tres columnas (considerándolas solo una a la vez) con respecto a una columna principal (la primera (A) en la imagen). ¿Puedes ayudarme? ¡Gracias!
Editar: si hago una tabla dinámica, no me da el recuento de columnas individuales sino la columna final.
Datos fuente:
Datos de resultados después de la transformación:
Fuente
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
Resultado
A B C D
p 2 1 1
q 2 1 2
r 3 2 2
s 2 1 2
Respuesta1
Construimos una lista de la columna.Aúnicos y ponerlo en la columnamiy luego realice una serie de bucles para contar los únicos en las otras columnas:
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