Así lo he hecho, he aceptado la segunda columna de anotación y he añadido una macro:
Private Sub Worksheet_Calculate()
Dim f As Long
Dim disparar As Boolean
' Si ya se disparó una vez, salimos
If Me.Range("XX2").Value <> "" Then Exit Sub
' Comprobamos si alguna W llegó a 2
For f = 2 To 6
If Me.Cells(f, "W").Value = 2 Then
disparar = True
Exit For
End If
Next f
' Si ninguna llegó a 2, no hacemos nada
If disparar = False Then Exit Sub
' Guardamos TODO el rango como base
For f = 2 To 6
Me.Cells(f, "XX").Value = Me.Cells(f, "W").Value
' Fórmula en Y restando su base
Me.Cells(f, "Y").FormulaLocal = _
"=CONTAR.SI.CONJUNTO(Datos!B:B;$V$1;Datos!D:D;$V" & f & ")" & _
"-CONTAR.SI.CONJUNTO(Datos!B:B;$V$1;Datos!E:E;$V" & f & ")" & _
"-XX" & f
Next f
End Sub
No es la opción más bonita porque sigue contando los objetos en la columna W, pero la función me resulta suficiente para poder llevar la cuenta.
Tendré que hacer una pequeña macro para cada jugadora, son 14, pero espero no tener problemas
Por
Maku, · publicado
En un foro de desarrolladores Excel en inglés se planteó la siguiente pregunta.
Using VBA find all the duplicate values from Column-A and print them in Column-B.
Note:
1. Even if the value has been repeated more than twice, still it should be printed only once.
2. Use of worksheet functions is not allowed.
3. Sorting is not allowed.
4. Printed column should not have any blank cells between two printed cells.
Usando VBA encontrar todos los valores duplicados de la columna A e imprimirlos en la columna B.
Nota:
1. Incluso si los valores se repiten más de dos veces, deben ser imprimidos una única vez.
2. No se permite el uso de las funciones de la hoja de cálculo.
3. No está permitida la ordenación.
4. La columna imprimida (
no debe tener ninguna celda en blanco entre dos celdas impresas.
Adjunto mi solución propuesta con las siguientes aportaciones:
¿Conoces otras soluciones con macros y sin fórmulas?
PASOS a seguir:
ListarDuplicados-PW1.zip