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
Buenos días
Tengo el siguiente código pero las condiciones en lo marcado en azul son más de 100 por lo que la línea
se me hará infinita. Hay alguna otra forma de poner las condiciones usando más líneas ( no solo una )
o bien que vaya a buscar a un rango determinado donde estén todas las condiciones a buscar
Paso fichero donde el rango a buscar sería de la pestaña CLIENTES. el rango D4:D25.
Sub DESPRECIAR()
Dim I, J As Integer
J = 8 'DONDE EMPIEZA A ESCRIBIR
For I = 4 To 4000 ' DONDE EMPIEZA A BUSCAR
If Range("EXPORTACION!N" & I) = "CLIENTE 1" Or Range("EXPORTACION!N" & I) = "CLIENTE 3" Then
Range("FILTRO!b" & J) = Range("EXPORTACION!B" & I)
Range("FILTRO!c" & J) = Range("EXPORTACION!C" & I)
Range("FILTRO!d" & J) = Range("EXPORTACION!F" & I)
Range("FILTRO!e" & J) = Range("EXPORTACION!G" & I)
Range("FILTRO!f" & J) = Range("EXPORTACION!H" & I)
Range("FILTRO!g" & J) = Range("EXPORTACION!I" & I)
Range("FILTRO!h" & J) = Range("EXPORTACION!J" & I)
Range("FILTRO!i" & J) = Range("EXPORTACION!K" & I)
Range("FILTRO!j" & J) = Range("EXPORTACION!N" & I)
Range("FILTRO!k" & J) = Range("EXPORTACION!O" & I)
Range("FILTRO!l" & J) = Range("EXPORTACION!P" & I)
J = J + 1
End If
Next
While Range("FILTRO!b" & J) <> ""
Range("FILTRO!b" & J) = ""
Range("FILTRO!c" & J) = ""
Range("FILTRO!d" & J) = ""
Range("FILTRO!e" & J) = ""
Range("FILTRO!f" & J) = ""
Range("FILTRO!g" & J) = ""
Range("FILTRO!h" & J) = ""
Range("FILTRO!i" & J) = ""
Range("FILTRO!j" & J) = ""
Range("FILTRO!k" & J) = ""
Range("FILTRO!l" & J) = ""
J = J + 1
Wend
End Sub
PLANTILLA CONTROL CMRS.rar