
エクセルif関数で、複数のシートから情報を集約する方法
if関数が最適なのかもわからないのですが、
以下の情報での情報集約方法を探しています。
複数シート(フォーマットは全て同じ。シート名は1.2.3.4.5~)
シートのA列に店舗番号がはいっています。
例 A1→100,A2→101,A3→102
シート1のA列に100が入力されている場合、
まとめシートに、シート1のC1が反映される。シート5のA列に150が入力されていた場合、まとめシートにシート5の該当セル(C151)が反映される。
上記のような数式を作りたいです。
どなたかご教授頂けますでしょうか?
宜しくお願いいたします。
No.2ベストアンサー
- 回答日時:
100とか150と言うのが店舗番号だろうか。
ならばシート名があるならそれを使って参照先を指定できる。
文字列から参照先を指定する場合、INDIRECT関数を使う。
すると、
=IF(シート1!A1=100,シート1!C1,"")
が、
=IF(INDIRECT(A1&"!A1")=B1,INDIRECT(A1&"!C1"),"")
のようになり、
=IF(ISERROR(MATCH(100,シート1!A:A,0)),"",シート1!C1)
が、
=IF(ISERROR(MATCH(B1,INDIRECT(A1&"!&A:A"),0)),"",INDIRECT(A1&"!C1"))
のようになる。
この場合、C1セルに相当する部分がどう紐付けされているのか不明なので、
そこは自身で「工夫してくれ」。
※条件(情報)が明らかに少なく、推測では答えられない。
もう一つアドバイス。
自身の手に負えない物件は早めにできないと申告すべき。
ありがとうございます!!
INDIRECTとVlookupの関数でなんとか無事にできました
情報も伝えきれていない中、アドバイス頂きありがとうございました!!
No.1
- 回答日時:
なんか違う気がするなあ。
「まとめシート」のどこかに参照するシートのデータを反映させる値(この場合100とか150)を入力するセルを作って、
データを反映させるべきではないだろうか。
・・・
それは置いといて、
シート1のA列には100以外の値が入力されていても、A列のどこかに100が入力されていたら反映させるということで良いのだろうか。
とりあえず作り方
まずはA1セルだけを参照して値を反映させる式を考える。
=IF(シート1!A1=100,シート1!C1,"")
=IF(シート5!A1=150,シート5!C151,"")
次にA1セルだけでなくA列全体を検索して該当する値があるかを判断する事を考える。
IF関数で総当たり…は現実的ではない。
MATCH関数で一致するセルがあるかを判断すれば良い。
=MATCH(100,A:A,0)
でエラーが返ってきたら該当する値(100)はない。エラーにならなかったら該当する値がある。
なのでISERROR関数でエラーの有無を検査してその結果を上で示した式に組み込む。
=IF(ISERROR(MATCH(100,シート1!A:A,0)),"",シート1!C1)
=IF(ISERROR(MATCH(150,シート5!A:A,0)),"",シート5!C151)
こんな感じだろうか。(エラー…すなわち該当しなければ空白を表示、エラーにならなかったら値を参照)
ほんとに【とりあえず】答えてみたが、これで抱えている問題がすべて解決すれば良いが…。
あとは工夫してみてください。
早速ありがとうございます!
冒頭にご指摘いただいた部分…。
説明不足ですみません。
反映される値をまとめシートに入れて数式を作る場合の方法はどうなりますでしょうか。。。
まとめシートの中には、
シート名、店舗名共に記載があります。
自分が作ったエクセルではなく、
急遽if関数で該当する値を飛ばす式をまとめシートのC列に作れと言われたもので…。チンプンカンプンでして。。
まとめシートは以下の感じです。
シート名→Aセル
店舗番号→Bセル
数式をいれる→Cセル(ここの部分が、複数シートから該当シートを選び、その中の店舗番号に紐付いた値を反映させる。)
説明も下手ですいません。
もしなんとなく私が意図してることがお分かりでしたらご教示頂けますと幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで金銭出納帳。繰越残高を...
-
エクセルで前シートを参照して...
-
EXCELで1ヶ月分の連続した日付...
-
EXCEL:同じセルへどんどん足し...
-
【Excel】 左のシートの特定セ...
-
複数シートの特定の位置に連番...
-
excelでシート毎の最終更新日を...
-
エクセルでファイル保存時に複...
-
エクセルのシート名をリスト化...
-
Excel、同じフォルダ内のExcel...
-
【Excel関数】値が合致するセル...
-
至急お願いします。エクセルシ...
-
前の(左隣の)シートを連続参...
-
エクセルVBAでパスの¥マークに...
-
エクセルの複数シートの保護を...
-
[Excel VBA]イベントマクロ上で...
-
【エクセルVBA】「インデックス...
-
エクセルで、売り上げの日計と...
-
条件に応じて特定の行を非表示...
-
【マクロ】毎回、ファイル名が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別シート参照のセルをシート毎...
-
エクセルの複数シートの保護を...
-
エクセルで前シートを参照して...
-
前の(左隣の)シートを連続参...
-
エクセルでファイルを開いたと...
-
EXCEL:同じセルへどんどん足し...
-
Excelで金銭出納帳。繰越残高を...
-
複数シートの特定の位置に連番...
-
Excelのシートを、まとめて表示...
-
EXCELで1ヶ月分の連続した日付...
-
エクセル 計算式も入っていない...
-
シートの保護のあとセルの列、...
-
特定のシートの削除を禁止した...
-
Excel、同じフォルダ内のExcel...
-
エクセルVBAでパスの¥マークに...
-
VBAでシートコピー後、シート名...
-
エクセルで複数設定したハイパーリンク先...
-
VBAで条件によりフォントサイズ...
-
excelでシート毎の最終更新日を...
-
シートを任意の日付で自動で作...
おすすめ情報