none
Linha filtrada abaixo do cabeçalho RRS feed

  • Pergunta

  • Pessoal,

    Tenho uma planilha com os seguintes valores:

    A1 = NOME

    A2 = MARIA

    A3 = JOÃO

    A4 = PEDRO

    Nessa planilha está ativo um filtro. digamos que eu filtre o nome pedro e a celula que está com o foco ativo no momento seja A1.

    Como faço para pegar a próxima linha que está ativa abaixo (que seria a linha A4 que contém a informação Pedro)?

    Pode ser também qualquer outra linha, mas preciso saber qual linha abaixo está visivel em determinado momento.

    Desde já eu agradeço pela atenção.

     

    quinta-feira, 16 de setembro de 2010 19:11

Respostas

  •     Dim rg As Range
       
        For Each rg In ActiveSheet.UsedRange.SpecialCells(xlCellTypeVisible)
            If (rg.Row <> 1) Then
                MsgBox "Na celula:" & rg.Row
                Exit For
            End If
        Next rg

    Pessoal,

    Será que tem uma forma mais elegante de fazer isso?

    Abraço !!!

    sexta-feira, 17 de setembro de 2010 11:26

Todas as Respostas

  • tente assim

     

    Sub Busca_Filtrados()
    Dim rg As Range
    
    For Each rg In Plan1.UsedRange.SpecialCells(xlCellTypeVisible)
      MsgBox "Na célula:" & rg.Address & " contém: " & rg.Value
    Next rg
    
    End Sub
    
    Teste ai e qqer coisa fale.

    Att


    Bruno Silva Leite Office Developer officevb.blogspot.com
    quinta-feira, 16 de setembro de 2010 22:35
  • Bruno,

    No exemplo que citei acima existe apenas uma coluna, mas na planilha real posso ter n linhas.

    O código que você disponibilizou já tenho como pegar a próxima linha, mas será que tem como eu ir direto para a linha abaixo do cabeçalho sem percorrer as colunas.

    De qualquer forma agradeço pelo código pois aprendi mais uma com ele.

    Abraço !!!

     

     

     

    sexta-feira, 17 de setembro de 2010 10:57
  •     Dim rg As Range
       
        For Each rg In ActiveSheet.UsedRange.SpecialCells(xlCellTypeVisible)
            If (rg.Row <> 1) Then
                MsgBox "Na celula:" & rg.Row
                Exit For
            End If
        Next rg

    Pessoal,

    Será que tem uma forma mais elegante de fazer isso?

    Abraço !!!

    sexta-feira, 17 de setembro de 2010 11:26