- ベストアンサー
エクセル関数についてoffice2007
- エクセル関数についてoffice2007。表のデータから条件に応じて別シートに抜き取りたいが、VLOOKUPでは右にしか参照できないため、データの範囲が大きい場合は手作業が大変。
- エクセル関数についてoffice2007。表のデータを条件ごとにまとめたり、合計を出したいが、手作業だと時間がかかる。数式で条件を指定し、セルの値を返す方法が知りたい。
- エクセル関数についてoffice2007。VLOOKUPでは右にしか参照できず、データの範囲が大きい場合は手作業が必要。条件に応じてデータを抜き取りたく、数式による自動化方法が知りたい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>条件が●●で=の時●●から右に◆下に◆のセルの値を返すような数式が知りたいです。 前提として,基準になる●●が具体的に何列にあるのかは既知であるとします。たとえばA列。 まずMATCH関数の勉強をして,基準位置の●●がA列の何行目に出てくるか調べます。 例: MATCH(●●,Sheet2!A:A,0) そこから下に△,右に□だけ動いた先のセルは,INDEX関数やOFFSET関数やこの2つを組み合わせて取ってきます。 例: =OFFSET(Sheet2!$A$1,MATCH(●●,Sheet2!A:A,0)+△-1,□-1) 例: =INDEX($A$1:$AL$5000,MATCH(●●,Sheet2!A:A,0)+△,□) 例: =OFFSET(INDEX(Sheet2!A:A,MATCH(●●,Sheet2!A:A,0)),△-1,□-1)
その他の回答 (2)
- KURUMITO
- ベストアンサー率42% (1835/4283)
例えばシート1にお示しの表があるとしてシート2のA1セルに1を入力し取り出したい行が3行下でD列の値を表示するとしたら次のような式になりますね。 =OFFSET(INDIRECT("Sheet1!A"&MATCH(A1,Sheet1!A:A,0)),3-1,4-1) ところで実際には3行下などという式を使われるのでしょうか?お示しの表を見ますと佐藤の最終行のD列の値を取り出すといったことでしょうか? その場合には別に作業列を用意して取り組むことが計算を重くしないで解決できる方法となるでしょう。 仮に佐藤はお示しのように連続して表示されているとした場合にその最終行を求めるために作業列としてE列のE1セルには次の式を入力して下方にオートフィルドラッグします。 その後にシート2のA1セルに1と入力し、佐藤の最終行のD列の値をB1セルに表示させるのでしたらB1セルには次の式を入力します。 =INDIRECT("Sheet1!D"&MATCH(A1,Sheet1!E:E,0))
お礼
この度は細かい説明頂きましてありがとうございました。とても勉強になります。本当に有難う御座いました。
- mu2011
- ベストアンサー率38% (1910/4994)
指定したセルから行・列を2次元みたいに参照できます「OFFSET関数」は如何でしょうか。 使用例などは「OFFSET関数」で検索すれば沢山ヒットしますのでご検討下さい。
お礼
御回答有難う御座います。OFFSET関数チャレンジさせて頂きます。
お礼
この度は御返答頂きまして誠に有難うございます。丁寧に御指示頂きまして誠に分かりやすかったです。 又機会がありましたら宜しくお願い致します。