Excel: 前の(相対)ワークシートのデータを参照するためのポータブルな数式

Excel: 前の(相対)ワークシートのデータを参照するためのポータブルな数式

かなりシンプルな Excel スプレッドシート (ワークブック) を作成する必要があります。各月ごとに 1 つずつ、合計 12 個のシート (タブ) が必要です。

各シートは、前のシートのセルを参照します。たとえば、「5 月」シートは「4 月」シートからデータを引き出し、「6 月」シートは「5 月」シートからデータを引き出します。

たとえば、最初のシート「4月」と 2 番目のシート「5月」を作成したとします。「5月」をコピーして「6月」に名前を変更しても、すべての数式は「5月」シートと同様に「4月」を参照します。代わりに自動的に「5月」を参照するようにしたいと思います。

どうすればこれが可能になるのでしょうか?

答え1

次のマクロを作成します。

Function SHEET_OFFSET(Offset, Ref)
'   Returns cell contents at Ref, in sheet Offset
    Application.Volatile
    With Application.Caller.Parent
        SHEET_OFFSET = .Parent.Sheets(.Index + Offset) _
         .Range(Ref.Address).Value
    End With
End Function

次に、5月のシートからセルにアクセスしたい場合はApril!Q42、次の数式を使用します。

SHEET_OFFSET(-1, Q42)

最初の引数は現在のシートを基準としたシート番号で、2 番目の引数はセル参照です。この数式を 6 月のシートにコピーすると、自動的に 5 月のシートが参照されます。

出典: これは私が見つけたものですスプレッドシートページ

関連情報