Actualmente tengo una columna de valores como la siguiente, que enumera los resultados de los partidos de fútbol.
Lost
Lost
Lost
Won
Drew
Drew
Won
Won
Usando esta fórmula, pude calcular dónde se repite una secuencia; por lo tanto, en la lista anterior, hay tres "Perdidos" seguidos.
=IF(A2=A1,B1+1,1)
Sin embargo, me gustaría calcular dónde es el valor 'Drew' o 'Won' (mostrando así el número de filas sin que aparezca "perdido". ¿Es esto posible?
Gracias
Respuesta1
Aquí hay un submódulo que revisa la columna A hasta encontrar una celda en blanco e imprime la racha más grande que no es "Perdida" en la celda B1.
Sub CountNonLoss()
Dim nonloss As Integer
Dim LongestStreak As Integer
Dim Val
Dim streak As New Collection
nonloss = 0
LongestStreak = 0
Range("A1").Select
Do Until IsEmpty(ActiveCell)
If ActiveCell.Value <> "Lost" Then
nonloss = nonloss + 1
Else
streak.Add nonloss
nonloss = 0
End If
ActiveCell.Offset(1, 0).Select
Loop
For Each Val In streak
If Val > LongestStreak Then
LongestStreak = Val
End If
Next Val
Range("B1").Value = LongestStreak
End Sub