Filtros de excel y desplazamiento con VB

21/09/2005 - 00:49 por jjppnett | Informe spam
Al trabajar con autofiltros de excel algunas filas se ocultan, mi pregunta
es se puede desplazarse, por las celdas mostradas en pantalla, con un
codigo en VB para el Excel, por que si te pones a grabar una macro la
macro te da directamente el lugar donde estas (range("A5").select si fuera
el caso que la celda visible fuera la A5) mi pregunta es saber si existe
una forma como desplazarse sobre las celdas visibles por que si pones la
dirección de una celda que no es visible el excel lo desplaza ahi pero eso
no te sirve de nada, muchas gracias
 

Leer las respuestas

#1 jjppnett
22/09/2005 - 06:06 | Informe spam
este codigo de abajo es bueno me da la ubicación pero solo de la ultima
celda con caracteres yo deseo, de la celda posterior a esa seria
simplemente si hubiera un codigo para desplazarse solamente por celdas
visibles, el resto yo lo haria, o si existe un comando, comprenden la idea

KL wrote:

Hola chicos,

Como alternativa, si se necesita un codigo mas rapido (aunque un poco mas
largo) y la posibilidad de manejar todo el rango a la vez o de forma
recurrente se puede usar un macro como el que sigue:

Sub Macro1()
Dim rng As Range
If ActiveSheet.AutoFilterMode Then
On Error Resume Next
With ActiveSheet.AutoFilter.Range.Offset(1)
Set rng = Intersect(ActiveSheet.Columns("C:C"), _
.Resize(.Rows.Count - 1)).SpecialCells(xlCellTypeVisible)
End With
On Error GoTo 0
If Not rng Is Nothing Then MsgBox rng.Address
End If
End Sub

Saludos,
KL


"David" <sdgm04(mapstonod)@hotmail.com> wrote in message
news:
> Cuando aplicas un filtro, es como si las filas que no coincidan con tu
> criterio tomaran un alto cero. Entonces, lo que tienes que hacer, es un
> ciclo para pasar por las filas con ancho cero utilizando la propiedad
> Offset,
> no Range. Seria algo como esto:
>
> Do
> ActiveCell.Offset(1, 0).Select
> Loop Until ActiveCell.EntireRow.RowHeight > 0
>
> Espero que te sirva.
>
> Saludos...
>
>
> "Jpdel@" escribio:
>
>> Al trabajar con autofiltros de excel algunas filas se ocultan, mi
>> pregunta
>> es se puede desplazarse, por las celdas mostradas en pantalla, con un
>> codigo en VB para el Excel, por que si te pones a grabar una macro la
>> macro te da directamente el lugar donde estas (range("A5").select si
>> fuera
>> el caso que la celda visible fuera la A5) mi pregunta es saber si existe
>> una forma como desplazarse sobre las celdas visibles por que si pones la
>> direccion de una celda que no es visible el excel lo desplaza ahi pero
>> eso
>> no te sirve de nada, muchas gracias
>>
>>

Preguntas similares