Jump to content

Numerar Celdas visibles


Recommended Posts

Hola,

Estoy intentado numerar una columna una vez que la filtro por columna B, este código me funciona si no añado filtro, pero una vez que lo hago se me para y me dice que no coinciden los tipos… encontré aquí en el foro este código (es el que me ha servido para adaptarlo a lo que busco):

Dim nFilas As Long
Dim nFila As Long
Dim i As Long
nFilas = Cells(Rows.Count, 2).End(xlUp).Row
nFila = 1
For i = 2 To nFilas + 2
    If Cells(i, 2) = "" Then Cells(i, 3) = ""
    If Cells(i, 2).SpecialCells(xlCellTypeVisible) <> "" Then
        Cells(i, 3) = nFila
        nFila = nFila + 1
    End If
Next

Me va de lujo si no filtro, pero se me para y dice que no coinciden los tipos al filtrar (os he dejado la macro en el fichero, podéis echarle un vistazo?

Gracias de antemano.

Ejemplo_filtro_.xlsm

Link to comment
Share on other sites

A ver si es esto:

Sub ConraIO()
Dim ContarI As Long, ContarO As Long
Application.ScreenUpdating = False
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
   Select Case Cells(i, 2)
      Case ""
         Cells(i, 3) = ""
      Case "I"
         ContarI = ContarI + 1
         Cells(i, 3) = ContarI
      Case "O"
         ContarO = ContarO + 1
         Cells(i, 3) = ContarO
   End Select
Next
End Sub

 

Link to comment
Share on other sites

11 hours ago, Antoni said:

A ver si es esto:

Sub ConraIO()
Dim ContarI As Long, ContarO As Long
Application.ScreenUpdating = False
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
   Select Case Cells(i, 2)
      Case ""
         Cells(i, 3) = ""
      Case "I"
         ContarI = ContarI + 1
         Cells(i, 3) = ContarI
      Case "O"
         ContarO = ContarO + 1
         Cells(i, 3) = ContarO
   End Select
Next
End Sub

 

Antoni, mil gracias como siempre. Funciona de maravilla y se entiende super bien. Gracias!!!

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

Privacy Policy