Excelでオートフィルを使って月ごとにシート参照を自動更新する方法

Excel

Excelでシート名に月を含む場合、オートフィルでコピーした際にシート名の月だけを自動で増加させたいことがあります。例えば、『2026年02月分』のシートを参照する数式をコピーして、『2026年03月分』『2026年04月分』…のようにしたい場合です。本記事では、数式を工夫して月部分だけ自動更新する方法を解説します。

INDIRECT関数を使ったシート名の動的参照

Excelでは、シート名を文字列として扱い、INDIRECT関数でセル参照に変換することで、オートフィル時にシート名を動的に変更できます。基本の構文は以下の通りです。

=IF(INDIRECT(“‘2026年” & TEXT(ROW(A1)+1,”00″) & “月分’!C14″)=””,””,INDIRECT(“‘2026年” & TEXT(ROW(A1)+1,”00″) & “月分’!C14”))

この例ではROW関数を使い、コピー先の行番号に応じて月部分を増加させています。

TEXT関数で月を2桁に固定

TEXT関数を使うことで、1月から12月までを「01」「02」…「12」と2桁で表示できます。これにより、シート名の書式と一致させることが可能です。

例えば、ROW(A1)の値が1なら02月、ROW(A2)の値が2なら03月と自動的に変化するように設定できます。

オートフィルでコピーする方法

上記の数式を入力したセルを選択し、右下のフィルハンドルを下にドラッグします。これにより、ROW関数の値が変化し、月部分が順番に増えるようになります。

結果として、『2026年02月分』『2026年03月分』『2026年04月分』…と自動で参照できるようになります。

注意点と補足

シート名と数式の書式が完全に一致している必要があります。また、シートが存在しない月を参照すると#REF!エラーになるため、必要に応じてIFERROR関数でエラー処理を追加するのがおすすめです。

また、月を増加させる方法はROW関数以外にCOLUMN関数を使った水平コピーも可能です。

まとめ

Excelでオートフィルを使い、シート名の月部分だけを自動更新して参照するには、INDIRECT関数とTEXT関数を組み合わせる方法が有効です。ROWやCOLUMN関数でコピー先に応じた数値を生成することで、数式を簡単に月単位で連続コピーできます。

コメント

タイトルとURLをコピーしました