하이퍼링크를 통해 한 시트에서 다른 시트로 데이터 이동

하이퍼링크를 통해 한 시트에서 다른 시트로 데이터 이동

기존 질문을 검색하여 유사한 질문과 답변을 찾았지만 내 요구 사항을 충족하는 것은 없습니다.

한 스프레드시트의 링크를 클릭하여 두 번째 스프레드시트로 이동하고 클릭한 셀의 값을 두 번째 필드에 배치할 수 있는 스프레드시트가 있습니다.

IT예를 들어, A열의 첫 번째 시트에는 , Finance및 단위가 포함됩니다.Networks

이러한 필드 중 하나를 클릭하면 사용자는 A1에 셀 값을 배치하는 "Sub Unit"이라는 두 번째 시트로 이동하게 됩니다. 여기서 하위 단위 목록을 채우는 if 문을 작성할 수 있습니다. 예를 들어 클릭하면 A1 셀에 IT입력됩니다 . IT그런 다음 A3-A5의 if 문을 통해 다음과 같이 만듭니다.

Security, Support, Development

그런 다음 유사한 VB 코드를 재사용하여 누군가가 하위 단위 이름을 클릭하면 하위 단위에 대한 세부 정보를 표시하는 세 번째 시트로 이동합니다.

그게 말이 되기를 바라요.

저는 VBA를 처음 접했으므로 코드를 어디에 배치해야 하는지 알려주세요(예: 탭, 마우스 오른쪽 버튼 클릭, 코드 보기 또는 다른 위치).

답변1

시트 1에서 키를 눌러 ALT+F11VB 편집기를 가져옵니다. 이 코드를 표준 모듈로 복사하여 붙여넣으세요.

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

작동 방식:

  • 셀에 일부 데이터를 쓰고 A80셀을 두 번 클릭합니다.
  • 어떤 셀을 클릭했는지 확인하는 메시지 상자가 나타납니다.
  • 버튼을 누르시오 OK.
  • Excel은 시트 2의 셀에 셀 포인터를 배치하고 Copy & Paste내용을 지정 합니다 .A80A80

주의

  • 필요에 따라 코드에서 셀 참조 및 시트 이름을 조정합니다.
  • 셀 범위를 참조할 수 있습니다 Copy & Paste.
  • 그렇게 하려면 이 줄을 편집하세요.
  • Range("A80:A85").Copy Sheet2.Range("A80")

관련 정보