Página 1 de 1

Maior intervalo sem aparecer [RESOLVIDO]

Enviado: 24 Mar 2021 às 14:10
por luizpaps
tenho algumas colunas com mais de 5000 linhas ex.:
1
2
3
5
1
2
3
7
9
1
preciso de uma macro para saber qual o maior intervalo que ficou sem aparecer o número 1

Re: Maior intervalo sem aparecer

Enviado: 26 Mar 2021 às 08:42
por Foxtri
Bom dia.
Considerando seus dados na coluna "A" (Pode ser outra, neste caso devera mudar a macro)), a partir de A2.....An.

Sub MaiorIntervalo()
Dim c As Range, mi As Long, mf As Long, k As Long
Application.ScreenUpdating = False
ActiveSheet.AutoFilterMode = False
If [a1] = "" Then [a1] = "X"
ActiveSheet.[a1].AutoFilter 1, 1
mi = 1
For Each c In Range("a2:a" & Cells(Rows.Count, 3).End(3).Row).SpecialCells(xlVisible)
If c.Row - mi > k Then k = c.Row - mi - 1
mi = c.Row
Next c
ActiveSheet.AutoFilterMode = False
MsgBox "MAIOR INTERVALO = " & k
End Sub

Veja se funciona.
Até
Foxtri

Re: Maior intervalo sem aparecer

Enviado: 26 Mar 2021 às 13:28
por luizpaps
não funcionou, está mostrando maior intervalo sempre 0

Re: Maior intervalo sem aparecer

Enviado: 26 Mar 2021 às 15:48
por JCabral
É só alterar:
Código: Selecionar todos
For Each c In Range("a2:a" & Cells(Rows.Count, 3).End(3).Row).SpecialCells(xlVisible)
para
Código: Selecionar todos
For Each c In Range("a2:a" & Cells(Rows.Count, 1).End(3).Row).SpecialCells(xlVisible)
pequeno engano do @Foxtri, em vez da coluna "C" deve ser a coluna "A"