- ベストアンサー
エクセルで月によって参照するシートを自動的に変える関数
- エクセル2003を使っています。1月~12月の各月のシートと、集計用のシート、合計13のシートを用意してあります。自動的に月によって参照するシートを変える関数、もしくは方法があれば教えてください。
- エクセル2003を使っています。1月~12月の各月のシートと集計用のシート、合計13のシートを用意してあります。集計用のシートで1カ月前から12カ月前までのデータを自動的に表示したいです。自動的に月によって参照するシートを変える方法があれば教えてください。
- エクセル2003を使っています。1月~12月の各月のシートと集計用のシート、合計13のシートを用意してあります。集計用のシートで1カ月前から12カ月前までのデータを自動的に表示させたいです。具体的には、5月には4月のデータを参照し、6月には5月のデータを参照したいです。自動的に月によって参照するシートを変える関数があれば教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- mo2yakko
- ベストアンサー率54% (30/55)
No2です。 シート名の計算式を下記に変更してください.orz =TEXT(DATE(YEAR($A$1),MONTH($A$1)-1,1),"M") & "月" '1ヶ月前の年月 =TEXT(DATE(YEAR($A$1),MONTH($A$1)-2,1),"M") & "月" '2ヶ月前の年月 あと$A$1をNOW()に置き換えてもいいです。
- mo2yakko
- ベストアンサー率54% (30/55)
シート名を年月にすれば、INDIRECTを使用すれば可能ではないでしょうか? ぱっと思いついただけなので他に良い方法があるかもしれません。 '今現在の年月 A1 =now() ※ファイルを開いたり、シートを更新する度に日付が変わってしまいます。 'シート名(年月) A3 =TEXT(DATE(YEAR($A$1),MONTH($A$1)-1,1),"YYYYMM") '1ヶ月前の年月 A4 =TEXT(DATE(YEAR($A$1),MONTH($A$1)-2,1),"YYYYMM") '2ヶ月前の年月 : : A14 =TEXT(DATE(YEAR($A$1),MONTH($A$1)-12,1),"YYYYMM") '2ヶ月前の年月 '年月シートのA列の合計 B3 =IF(ISERROR(INDIRECT(A3&"!"&"A1")),"",SUM(INDIRECT($A3&"!"&"A:A"))) B4 =IF(ISERROR(INDIRECT(A4&"!"&"A1")),"",SUM(INDIRECT($A4&"!"&"A:A"))) : (コピペでいいかも)
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
分析ツールをインストールしてあれば、edate関数が使えます。 これはedate(日付, 月)で日付から月数後の日付を返すので、たとえ ばmonth(edate(today(),-1))とすれば先月が何月だったか判るわけ ですね。そうすると6月である今「5月」シートのG13を参照するには =indirect(month(edate(today(),-1))&"月!G13") の様になりますね。
お礼
大変すいません。 シートの参照ができれば、後は自分でできると思ったのですが、解決しませんでした。 大変失礼なのですが、追加質問させて頂きます。 集計用シートのC列に名前が入っており、 また各月のシートのE列に名前、G列に数値が入っています。 集計用シートのF列~Q列に、1カ月前~12カ月前の集計表示をさせたいのですが、 集計用シートの名前と同じ名前を、各月のシートから検索し、その数値の合計を表示させたいです。 例) 今月が6月だとして、集計用シートのC4=Aさんの場合、 5月のシートを参照し、E列に"Aさん"と入力されている行(複数ある場合あり)のG列に入っている数値の合計を、集計用シートのF4セル(1カ月前のデータを表示するセル)に表示させたいです。 同じように、4月のシートを参照し、同じ名前の合計数値をG4セル(2カ月前のデータを表示するセル)に表示するといった具合です。 また、集計用シートはC5,C6・・・と続きます。 申し訳ありませんが、解決方法を御伝授頂けないでしょうか。
お礼
大変すいません。 シートの参照ができれば、後は自分でできると思ったのですが、解決しませんでした。 大変失礼なのですが、追加質問させて頂きます。 集計用シートのC列に名前が入っており、 また各月のシートのE列に名前、G列に数値が入っています。 集計用シートのF列~Q列に、1カ月前~12カ月前の集計表示をさせたいのですが、 集計用シートの名前と同じ名前を、各月のシートから検索し、その数値の合計を表示させたいです。 例) 今月が6月だとして、集計用シートのC4=Aさんの場合、 5月のシートを参照し、E列に"Aさん"と入力されている行(複数ある場合あり)のG列に入っている数値の合計を、集計用シートのF4セル(1カ月前のデータを表示するセル)に表示させたいです。 同じように、4月のシートを参照し、同じ名前の合計数値をG4セル(2カ月前のデータを表示するセル)に表示するといった具合です。 また、集計用シートはC5,C6・・・と続きます。 申し訳ありませんが、解決方法を御伝授頂けないでしょうか。