시트 및 셀 참조 복사

시트 및 셀 참조 복사

동일한 통합 문서 내에 "시트 A"와 "시트 B"가 있다고 가정해 보겠습니다.

시트 B에는 시트 "A"를 참조하는 셀이 있습니다. 즉 ='시트 A'!Q20

동일한 통합 문서에서 시트 B를 복사하고 "시트 C"를 만들고 싶고 시트 C의 셀 참조(='시트 A'!Q20)가 이제 시트 B를 참조하도록 하려고 합니다. 즉 ='시트 B'!Q20.

시트 B를 복사하고 시트 C를 생성해도 셀 참조는 여전히 ='시트 A'!Q20입니다.

비슷한 문제에 대한 해결책을 본 적이 있지만 동일한 통합 문서 내에서 시트를 복사할 때는 그렇지 않았습니다.

티아

답변1

이 공식을 사용해 보세요시트 B:

=INDIRECT("'Sheet "&CHAR(CODE(RIGHT(CELL("filename"),1))-1)&"'!A1")

여기에 이미지 설명을 입력하세요

답변2

ofs현재 워크시트에서 위치가 이동된 워크시트의 이름을 반환하는 단순 UDF를 정의할 수도 있습니다 .

Function sh(ofs As Long) As String
    Dim cw As Long
    cw = Application.Caller.Parent.Index
    sh = Worksheets(cw + ofs).Name
End Function

이전 워크시트의 이름은 이고 sh(-1)다음 워크시트의 이름은 입니다 sh(1). 이제 수식을 사용하여 이전 워크시트의
셀을 참조할 수 있습니다 .Q20

=INDIRECT("'"&sh(-1)&"'!Q20")

또는

=INDIRECT(ADDRESS(20,17,,,sh(-1)))

관련 정보