複製工作表和儲存格引用

複製工作表和儲存格引用

假設我在同一工作簿中有「工作表 A」和「工作表 B」。

工作表 B 有一個引用工作表「A」的儲存格,即 ='工作表 A'!Q20

我想在同一工作簿中複製工作表B 並建立“工作表C”,並且希望工作表C 中的儲存格引用(='工作表A '!Q20) 現在引用工作表B。 B '!Q20。

當我複製工作表 B 並建立工作表 C 時,儲存格引用仍然 ='Sheet A '!Q20

我已經看到了類似問題的解決方案,但在同一工作簿中複製工作表時卻沒有。

TIA

答案1

試試這個公式乙片:

=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)))

相關內容