こんにちは。
みなさんのお知恵をお借りしたく、質問させていただきました。
エクセルで月別のシートを作っているのですが、
当月シートに前月のデータを参照させたいと思っています。
例えば11月セルB1に10月のA1のデータをかえすといったように。
もちろん10月シートを指定すればよいのでしょうが、
それではシート毎に個別に参照を設定しなければならず、
ちょっと面倒だなと感じております。
上記の方法では11月のシートをコピーして12月のシートを作成しても
前月参照セルは10月のシートを参照してしまうことになります。
常に前月のシートを参照するためにはどうすればよいのでしょうか?
シートを相対参照すればよいのかと思いますが、その方法がわかりません。
勉強不足で申し訳ありませんが、ご存知の方いらっしゃいましたら教えてください。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
シート名が、シートコピーをする度に変わらないといけないのなら、
絶えずどこかで変えてやらないと関数では難しいと思います。
私が思った例は、
シートコピーをした際にA1に絶えずその月数を入れてやれば
下記式で前月のシートを参照できます。
たとえばA1に"11"と入った11月のシートを
コピーして11月(2)を作ります。
そのシートのA1に"12"と入れてやれば10月では無く
11月のシートデータを参照します。
そして、11月(2)のシート名を12月とすれば、
次の1月になって12月シートをコピーしたときも
12月(2)のA1に"1"と入れ変えるだけで
参照先を12月のシートに出来ます。
=INDIRECT("'"&IF(A1=1,12,A1-1)&"月'!C2")
こんばんは。早々のご回答ありがとうございます。
教えていただいたとおり、入力してみると希望通りの結果に!
本当に助かりました。
今まで全くINDIRECT関数を使ったことがなかったのですが
(というより、どう使えばいいのかわからなかったです)
とても勉強になりました。
ありがとうございます!
まだINDIRECT関数がぼんやりわかった位なので
もっと活用できるように勉強させていただきます。
No.3
- 回答日時:
関数におけるシートの指定は
(1)名前
によるだけです。
VBAではSheets(1)やActivesheetなどの指定がありますが、関数では
名前しかない。
ーー
そこで前月を算出できるのは
(1)シート名に数字がある命名の場合 シート名の月の部分は、前月はN-1です
(2)シート名の番号に頼れない命名の場合はそれがわかる表が必要です。
ーー
どちらもINDIRECT関数しかないと思う(ユーザー関数を除いて)。
ーー
(1)の場合A1に月数があるとして
A1 ーーA2ーーーーーーD2(繰越残・式)ーー D2の値ーーー D20(末算)
11 繰越残ーーーー略 ------------------------ --123-----111
12 繰越残----=INDIRECT("Sheet"&(A1-11)&"!D20")--111-----222
1 繰越残----=INDIRECT("Sheet"&(A1-11+12)&"!D20")--222-----333
2 繰越残----=INDIRECT("Sheet"&(A1-11+12)&"!D20")--333-----444
3 繰越残----=INDIRECT("Sheet"&(A1-11+12)&"!D20")--444-----555
4 繰越残----=INDIRECT("Sheet"&(A1-11+12)&"!D20")--555-----666
以下略。
こういうのでコピーできたといえるのでしょうか。代替は前月のD2の式をコピーしてOKですが、12->1でわずかな手直しが必要です。
ーーー
11-翌10月の各月のシート名を「あ、い、う、え、お、・・」とした場合
表をSheet6のI1:I12に、1月ずらしでもち
い
う
え
お
か
き
く
け
こ
さ
し
あ
と持った場合
12月のシートのD2には
=INDIRECT(INDEX(Sheet6!$I$1:$I$12,A1,1)&"!D20")
と入れると、上記例と同じにできる。今度はシート間同一場所セルへコピーだけでできるよう。
ーー
ちょっと複雑になったのですが、こういうことになりませんか。
こんばんは。
とても詳しい説明ありがとうございます。
わかりやすくて、INDIRECT関数の意味が理解できました。
教えていただいたことを活かして他にも色々できそうで嬉しいです。
どうもありがとうございました!
No.2
- 回答日時:
こんばんは。
>それではシート毎に個別に参照を設定しなければならず、ちょっと面倒だなと感じております。
以下のような数式は結構知られていますし、かつて、手前のシートの番号を取るという、マクロ関数を使ったワザもあるのですが……。そちらは、一応、ExcelのVersion しだいといことになりそうです。
=INDIRECT(MOD(SUBSTITUTE(MID(CELL("filename",A1),FIND("]",CELL("filename"))+1,3),"月","")+10,12)+1&"月!A1")
こんばんは。
ご回答ありがとうございます。
すみません、勉強不足でせっかくおしえていただいた式を
まだ理解できていません。
これから考えさせてもらいますね。
ありがとうございました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel セルに入っている日付を参照して、別シートのリストを表示させたい 1 2022/04/12 17:02
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) エクセル シート比較で書式を変えるを繰り返したい 2 2023/05/05 11:25
- Excel(エクセル) エクセルでセルの日付を和暦表示設定にしたらおかしなことに? 3 2022/05/25 11:47
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Excel(エクセル) 【エクセル】文中に別シートのセルの内容を自動入力したい 6 2022/11/17 11:30
- その他(Microsoft Office) エクセルの休日について教えてください。 1 2023/01/06 15:45
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Excel(エクセル) VBAで同フォルダ内の別ブックを開かず参照して条件の一致する行の指定セルを抽出するには? 1 2022/07/21 19:29
- Excel(エクセル) EXCEL マクロで 同じフォルダ内の複数ファイルの複数行全体を選択して1つのファイルに集約 4 2022/09/27 18:41
このQ&Aを見た人はこんなQ&Aも見ています
-
風水の観点で選ぶ観葉植物とは?置き場所や上げたい運気ごとの注意点を紹介!
観葉植物で運気をアップするコツを、風水デザイン1級建築士の福島昌彦さんに伺った。
-
エクセルで、月によって参照するシートを自動的に変える関数
Excel(エクセル)
-
エクセルで前のシートを連続参照したい
Excel(エクセル)
-
エクセルでシートまたぎのセルの数値の参照
Excel(エクセル)
-
-
4
エクセル 指定した月のデータを自動的に反映させられる方法
Excel(エクセル)
-
5
前の(左隣の)シートを連続参照するように、あとから変更したい
Excel(エクセル)
-
6
エクセル!常に隣のシートを参照する数式をおしえて
UNIX・Linux
-
7
Excelで金銭出納帳。繰越残高を翌月へ・・・
その他(パソコン・スマホ・電化製品)
-
8
エクセル複数シート(1年)に1つ前のデータをもとに、(毎月)順に累計を出す関数の入れ方
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelについて教えてください
-
【Excel】数字を3倍にし、なお...
-
エクセルVBA、別ブックへ転記す...
-
エクセル マクロ チェックボックス
-
Excel分析ツールでのポアソン回...
-
【マクロ】顧客番号にて一致さ...
-
【マクロ】名前を保存する際に...
-
エクセルのデーターが2か月前の...
-
UNIQUE関数が使えないバージョ...
-
エクセル共有したが、アクセス...
-
Excelでセルの値が同じか...
-
(マクロ)データをAブックからB...
-
Excel フィルターを掛けた状態...
-
エクセル②
-
エクセルを使っていて2024/5/15...
-
Googleスプレッドシートでファ...
-
エクセルで不等号記号(≠)が上に...
-
Win10でExcel VBA GetPhonetic...
-
Excelで縦軸の書式を0:00形式の...
-
エクセル:一覧表に存在する文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報