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
Buen día,
Es mi primera incursión a macros de excel.
Les solicitaría su inapreciable ayuda me pudieran orientar al respecto.
La necesidad es la siguiente:
De una hoja excel llamada movimientos del mes que contiene varias filas con la misma clave:
clave Fecha Déscripción Monto1 Monto2
12202680 05/11/12 Concepto 1 1000
12202680 05/12/12 Concepto 2 500
12202680 05/13/12 Concepto 3 5000
12202680 05/14/12 Concepto 4 1500
12202681 05/01/12 Concepto A 10000
12202681 05/02/12 Concepto B 3000
Las filas con la misma clave sean trasladadas a un Libro cuya hoja es el nombre de la clave:
Nombre Libro mensualidades, nombre de la hoja 12202680:
12202680 01/10/12 Concepto ant 1 500
12202680 02/10/12 Concepto ant 2 600
Los datos queden adicionados en la primera fila disponible del la hoja que tiene como nombre 12202680
12202680 01/10/12 Concepto ant 1 500
12202680 02/10/12 Concepto ant 2 600
12202680 05/11/12 Concepto 1 1000
12202680 05/12/12 Concepto 2 500
12202680 05/13/12 Concepto 3 5000
12202680 05/14/12 Concepto 4 1500
Les quedo agradecido por su ayuda,