Alguém pode me ajudar com uma fórmula de célula única ou VBA para encontrar duplicatas em células consecutivas seguidas com
- Duas células consecutivas com o mesmo valor = 1,
- Três células consecutivas com o mesmo valor = 2
- ... breve ....
Eu tenho um conjunto de dados com cerca de 500 linhas com dados de 31 dias (sucesso ou falha), preciso descobrir quantas vezes há uma falha consecutivamente por 2 dias e mais, já que a falha de um dia e o sucesso no dia seguinte são aceitáveis.
Espero que esteja claro o suficiente... Lembre-se de que não posso inserir linhas entre as linhas para usar countif
(os dados não podem ser tocados). Portanto, preciso gerar a saída na 32ª coluna.
Isso também é urgente para mim
Responder1
Primeiro insira a seguinte UDF em um módulo padrão:
Option Explicit
Public Function consecu(rng As Range) As Long
Dim arr(1 To 31) As Long, i As Long
Dim r As Range
arr(1) = 0
i = 1
For Each r In rng
If i = 1 Then
i = i + 1
Else
If r.Value = r.Offset(0, -1).Value Then
arr(i) = arr(i - 1) + 1
Else
arr(i) = 0
End If
i = i + 1
End If
Next r
consecu = Application.WorksheetFunction.Max(arr)
End Function
Então com dados deA1atravésAE1, emAF1digitar:
=consecu(A1:AE1)
Por exemplo: