Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
klebson00

[Resolvido] Filtrar uma planilha através de um hiperlink clicado em outra planilha.

Recommended Posts

Olá Pessoal.

Vocês podem me ajudar sobre qual função usar para que quando clicar em um nome em uma "planilha A" possa me remeter a uma "planilha B" já filtrada com o nome que cliquei anteriormente.

Segue a planilha:

http://www.sendspace.com/file/eihqkm

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi, klebson00,

Talvez, a única forma seria com VBA.

Com VBA, acredito que existem duas maneiras para realizar o procedimento.

Antes de qualquer coisa, o hiperlink deve referenciar a planilha de cursos realizados.

Caso o hiperlink seja adicionado nome por nome, a solução abaixo pode ser adotada.

Na Plan1, adicione:


Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
With Plan2
.Range("A3:G3").AutoFilter 3, Target.Range.Value
End With
End Sub

Abaixo, solução no caso do hiperlink ser adicionado de uma só vez em todos os nomes (um único hiperlink).

Na Plan1, adicione:


Dim empregado As String

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
With Plan2
.Range("A3:G3").AutoFilter 3, empregado
End With
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim empregadoAnterior As String
empregadoAnterior = empregado
On Error Resume Next
empregado = Target.Value
If Not Err = 0 Then
empregado = empregadoAnterior
End If
End Sub

E, no workbook:


Private Sub Workbook_Open()
Plan1.Range("A1").Activate
End Sub

Alterei a planilha, adicionando a solução da segunda alternativa citada, e fiz o upload em http://www.sendspace.com/file/btw99w.

Editado por vinibpeixoto
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vinibpeixoto, muito Obrigado!

Não iria chegar a esta conclusão onde você conseguiu. \o/

Dá tudo certinho, no entanto quando clico em algum hiperlink e fecho a planilha, quando abro novamente a planilha mostra uma janela:

"Erro em tempo de execução '1004':

O Método Activate da classe Range falhou."

Depois de alguns testes, para não aparecer esta mensagem de novo, devo, quando terminar (antes de fechar a planilha) "desfiltrar" (Dados -> Limpar) a planilha e assim fechar a planilha como todo.

Como é um dos meus primeiros contatos em Macro e VBA, utilizei a opção Grava Macro, para fazer os seguintes passos: Limpar Dados da planilha B e voltar para planilha A. Logo após, inserir um botão na Planilha B e atribuir a ela o macro.

Deste modo fecho a planilha e quando abro novamente não aparece mais a janela.

Bom... é uma solução que conseguir fazer na minha limitação (ainda) em macro. hehe

Vinibpeixoto, posso utilizar isso?

Vocês teriam alguma outra sugestão?

Segue a planilha feita por Vinibpeixoto com a inclusão do botão que citei acima.

http://www.sendspace.com/file/9d7vec

Muito bom poder aprender sobre VGA/Macro.

Obrigado por vocês estarem me proporcionando isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Klebson00, verifiquei o problema e percebi que, na verdade, o erro ocorria devido ao código existente no workbook.

Todas as vezes que o arquivo é aberto, é selecionado a célula A1 da planilha "relação". No entanto, caso o arquivo fosse salvo com a planilha "cursos realizados" ativa, a linha de código não conseguia localizar a célula A1 da planilha que não estava ativa.

Alterei o código do workbook e o problema foi resolvido.


Private Sub Workbook_Open()
With Plan1
.Activate
.Range("A1").Activate
End With
End Sub

O arquivo atualizado está em http://www.sendspace.com/file/qmlsyg.

Editado por vinibpeixoto
  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vinibpeixoto,

Ficou perfeito!

Tô gostando demais saber sobre VGA. Não imaginava o quanto podemos fazer com VGA. Sua solução foi muito útil. Muito Obrigado. Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×