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
Hola a todos y muchas gracias de antemano.
mi problema es el siguiente:
Quiero fitlrar una tabla dinamica por fechas en funcion del valor que contienen dos celdas:
Adjunto un fichero como ejemplo
El campo a filtrar se llama Dia2 y las celdas b1 y b2.
Esto es lo que he intentado:
Sub filtrarfecha()
Sheets("td").Select
ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("Dia2").ClearAllFilters
ActiveSheet.PivotTables("Tabla dinámica1").PivotCache.Refresh
a = Range("b2").Value
b = Range("b3").Value
ActiveSheet.PivotTables("Tabla dinámica1").PivotFields("Dia2").PivotFilters.Add _
Type:=xlDateBetween, Value1:="a", Value2:="b"
End Sub
Buscando por google he encontrado el siguiente macro:Excélpatas: Filtrar por rango de fechas en una tabla dinámica
El cual no soy capaz de que funcione para mi caso.
Adjunto un ejemplo aki:
https://www.dropbox.com/s/5outz4x0969kqv5/filtrarporfechas.xlsx
Gracias a todos por vuestro tiempo
PD: a ver si consigo que funcione una de las 2 macros, un saludo
filtrarporfechas.rar