人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

複数のワークシートに分けているデータリストすべての中から一致したデータを検索し、
複数の条件での値のいずれかを表示するようにしたい。
データリストの表はサイズ、項目が統一されています。現在の式は“IF”と“VLOOK”で構成されており、検索対象が別シート1だけの時は、計算されましたが、シートを追加したら#VALUE!エラーになってしまいます。

●質問者: htndrk
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● きゃづみぃ
●300ポイント

http://allabout.co.jp/gm/gc/50028/

引数の指定の仕方が悪いと #VALUE!エラーが出ます。

http://www.excel.studio-kazu.jp/kw/20020625230516.html

ひとつのシートで なかったら 次のシートというやり方しかないですね。

◎質問者からの返答

何度もお手間をおかけしました。へぼいPCですし、ACCESSもありません。

頭の悪い質問の仕方だったようで、目的の回答はえられませんでしたが、今後役立たせていただきます。分けたSheetは入力用。入力後は別Sheetに一括でデータが入るようにしましたので、参照Sheetが複数で無いためVLOOKはそのまま使えます。Sheetは1枚増えましたが、とっても簡単なので、満足しています。いろいろありがとうございました。


2 ● じゅぴたー
●0ポイント

>複数の条件での値のいずれかを表示するようにしたい

これだけですと、どのような処理をすればいいか分かりません。

エラーが出ている関数式を紹介していただければ、何かアドバイスできるかもしれません。

◎質問者からの返答

じゅぴたー様

ありがとうございます。VLOOK以外の方がいいのでしょうか?

検索したいデータは1つです。ただ、一致したセルを見つけても、表示が記号だった場合いの返し方などを“IF”で指示しています。

IF(L10="","",IF(VLOOKUP(K10,Sheet2!$K$10:$BH$174,8,FALSE)="","",IF(VLOOKUP(K10,Sheet2!$K$10:$BH$174,8,FALSE)="Tr"," Tr",IF(VLOOKUP(K10,Sheet2!$K$10:$BH$174,8,FALSE)="-"," -",ROUNDDOWN(

VLOOKUP(K10,Sheet2!$K$10:$BH$174,8,FALSE)/100*L10,2)))))


3 ● TransFreeBSD
●300ポイント ベストアンサー

複数のシートにまたがって検索するような関数はなかったように思います。

まずは中間結果を持つシートを作ってはどうでしょうか?

=IF(NOT(ISNA(VLOOKUP(Sheet1!K10,Sheet2!$K$10:$BH$174,8,FALSE))),VLOOKUP(Sheet1!K10,Sheet2!$K$10:$BH$174,8,FALSE),IF(NOT(ISNA(VLOOKUP(Sheet1!K10,Sheet3!$K$10:$BH$174,8,FALSE))),VLOOKUP(Sheet1!K10,Sheet3!$K$10:$BH$174,8,FALSE),?

こういった感じで、まずは検索結果の値を求めたシートを作って、それを利用してはどうでしょう。

これも長くなるということなら、各検索対象のシート毎に検索結果を持つシートを作ってもよいでしょう。

あと、こういう場合にやっとくと良い事をいくつか。

名前で対応関係が出来ていると間違いが分かりやすいです(検索範囲1と言う名前で検索対象1シートの範囲に名前が付いていて、検索結果1シートで検索対象1を使うとか)。

また、範囲に名前を付けるのではなくて、indirect関数を使ってセル中に指定する方法もあります。

BCDEF
2Sheet1K10BH174
3=VLOOKUP(K10,INDIRECT($B$2&"!"&$C$2&$D$2&":"&$E$2&$F$2),8,FALSE)

とか。

◎質問者からの返答

TransFreeBSD様

とても丁寧にご回答いただきまして感激しています。

ご案内の使用例等、大変参考になり、今後応用できればと思います。

簡単に説明しようと、Sheet1に計算結果、Sheet2以降にデータリストとしました。ここに記載の計算式は、1行あたり、43列それぞれの計算結果を求めるうちの、1セルだけを紹介しました。1セル分の計算式がわかれば条件を列ごとに変えるだけですし、せいぜい100行ぐらいですから、列ごと&行ごとにドラッグすればいいと思ったからです。一致するデータはそれらの列と、どこかの行に必ず1つだけあって、どの行かを定めるのにVLOOKを使いました。データリストは今のところ22シートでデータ行も増えるかもしれませんので、かなり余分に範囲指定していますが、計算結果のシートは毎日4シート(3シート+集計表)づつ増える予定ですので、いずれはBOOKも分けなければなりません。その辺から考え直さないとダメかもしれません。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ