質問: エクセルで、月によって参照するシートを自動的に変える関数 エクセルで、月によって参照するシートを自動的に変える関数 エクセル2003を使っています。 1月~12月の各月のシートと、集計用のシート、合計13のシートを用意してあります。 1月~12月のシートには、それぞれその月のデータが入っています。 これらのシートはローテーションで使用します。 (”6月”シートに2009年6月のデータが入っているとして、 2010年6月にはこのシートの2009年6月分のデータを一旦消して 新たに2010年6月分のデータを入れる。) これに対して、集計用のシートでデータを自動表示したいのですが、 1カ月前~12カ月前といった表示をさせたいのです。 つまり、1カ月前を表示させるセルは、5月には4月の、6月には5月のシートを参照させたい。 2010年6月には1カ月前に入っていた5月のデータは、2010年7月には2カ月前に表示させたいです。 自動的にこのような表示のさせる関数、もしくは方法があれば教えて下さい。
回答: 分析ツールをインストールしてあれば、edate関数が使えます。 これはedate(日付, 月)で日付から月数後の日付を返すので、たとえ ばmonth(edate(today(),-1))とすれば先月が何月だったか判るわけ ですね。そうすると6月である今「5月」シートのg13を参照するには =indirect(month(edate(today(),-1))&"月!g13") の様になりますね。