Mover dados de uma planilha para outra por meio de um hiperlink

Mover dados de uma planilha para outra por meio de um hiperlink

Pesquisei as perguntas existentes e encontrei perguntas e respostas semelhantes, mas nenhuma que atendesse aos meus requisitos.

Tenho uma planilha onde desejo poder clicar nos links de uma planilha para ir para a segunda, colocando o valor da célula clicada em um campo da segunda.

Por exemplo, a primeira planilha na coluna A conterá as unidades IT, FinanceeNetworks

Clicar em qualquer um desses campos deve levar o usuário para a segunda planilha chamada "Sub Unidade" colocando o valor da célula em A1 onde posso então escrever instruções if para preencher a lista de subunidades, por exemplo clicar em ITcolocaria ITna célula A1 e então via instruções if em A3-A5 as tornariam como

Security, Support, Development

Então, eu reutilizaria um código VB semelhante para que, se alguém clicar no nome de uma subunidade, ele o levasse para uma terceira planilha que mostraria os detalhes da subunidade.

Espero que faça sentido,

Sou muito novo no VBA, então indique onde devo colocar qualquer código (por exemplo, na guia, clique com o botão direito, visualize o código ou em algum lugar diferente)

Responder1

Na Folha 1, pressione ALT+F11para obter o editor VB. Copie e cole este código como módulo padrão.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
MsgBox "Range " & Target.Address & " was double clicked"
 On Error Resume Next
    Dim xRg As Range
    Set xRg = Application.Selection
    Range("A80").Copy Sheet2.Range("A80")
    Application.Goto Worksheets("Sheet2").Range("A80"), True
End Sub

Como funciona:

  • Escreva alguns dados na célula A80e clique duas vezes na célula.
  • Você recebe a caixa Mensagem para confirmar qual célula foi clicada.
  • Aperte OKo botão.
  • O Excel irá Copy & Pasteo conteúdo A80e colocará o ponteiro da célula na célula A80da planilha 2.

Observação

  • Ajuste as referências das células e o nome da planilha no código conforme necessário.
  • Você pode consultar o intervalo de células para Copy & Paste.
  • Para fazer isso edite esta linha,,
  • Range("A80:A85").Copy Sheet2.Range("A80")

informação relacionada