Extraer el primer valor de una columna según el filtro

Gente! Buenas. Después de tanto tiempo pude volver a usar una compu en mi trabajo porque había cambiado y nada tenia que ver con usar excel o una PC directamente. Yo recuerdo que Luis Mondelo era el que siempre me ayudaba. No se sigue estando en el foro. Gente,, tengo en una columna números que van de P5 A P1000. De esa columna cuando pongo un filtro necesito restar el primer numero de esa columna (que aparece según filtro) con el ultimo numero de esa misma columna (según filtro). Osea que va variando los valores y el rango de ese primer y ultimo numero de columna. Esa resta de esos valores necesito que se muestre en la celda P2.

1 respuesta

Respuesta
1

[Hola

Como para que te des idea:

Sub Filtrar()
Dim UltimaFila As Long
Let UltimaFila = Cells(Rows.Count, 1).End(xlUp).Row
MsgBox "Última celda llena al filtar: " & Range("A" & UltimaFila).Address
MsgBox "La primera celda vacía es: " & "A" & Range("A1").CurrentRegion.Areas(1).Rows.Count + 1
MsgBox "Primera celda visible al filtrar: " & Cells(Range("A1").CurrentRegion.Offset(1, 0).SpecialCells(xlCellTypeVisible).Row, 1).Address
End Sub

Como te darás cuenta el ejemplo es basado en la columna "A", pero es solo cuestión que lo adaptes.

Saludos]

Abraham Valencia

HOLA BUEN DÍA. Gracias por responder. No funciona. Osea, funciona pero siempre tira los mismos datos. Pero no importa. Otra forma seria, extraer en una celta aparte, por ejemplo; P1, el primer numero del filtrado (filtro que se hace en la columna P), y en otra celda, por ejemplo P2, el ultimo numero del filtro. Yo después hago una resta normal con esos dos números.  GRACIAS 

ESTO ES!! OJALA SE ENTIENDA MEJOR LO QUE QUIERO DECIR! 

Sugiero releer lo que te puse ahí: "es solo cuestión que lo adaptes".

Si vuelves a mirar verás que hago referencia a la columna A y a la celda A1, por ende, era cuestión de tratar de entenderlo y adaptarlo a tu dilema:

Sub Filtrar()
Dim UltimaFila As Long
Let UltimaFila = Cells(Rows.Count, 16).End(xlUp).Row
MsgBox "Última celda llena al filtar: " & Range("P" & UltimaFila).Address
MsgBox "La primera celda vacía es: " & "A" & Range("P4").CurrentRegion.Areas(1).Rows.Count + 4
MsgBox "Primera celda visible al filtrar: " & Cells(Range("P4").CurrentRegion.Offset(1, 0).SpecialCells(xlCellTypeVisible).Row, 1).Address
End Sub

Si lo ves bien, no era nada complicado. Ahora, como verás,  ya tienes los valores deseados, solo basta que los envíes a las celdas y/o como mejor te acomode.

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas