• ベストアンサー

SUMPRODUCTの範囲指定で行位置をセルから取得したい

Excel2002で質問です。 SUMPRODUCT関数の範囲の指定で行位置の数値を他のセルから取得したいのですが記述方法が分かりません。(環境はExcel2002です。) ・例としてセルA1に下記のSUMPRODUCT関数 =SUMPRODUCT((A3:A●="りんご")*(B3:B●="みかん")*(C3:C●)) ・セルZ1に数字"10"が入っています。 上記状態で黒丸の部分にセルZ1を参照し10を入れたいのです。 初心者で根本的な書式が分かってないのかもしれず… よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

回答No1です。 最後のC1はC3の誤りでした。 =SUMPRODUCT((A3:INDIRECT(ADDRESS(Z1,1))="りんご")*(B3:INDIRECT(ADDRESS(Z1,2))="みかん")*(C3:INDIRECT(ADDRESS(Z1,3))))

neptune999
質問者

お礼

出来ました!ありがとうございました!

その他の回答 (2)

回答No.3

こんな方法もあります =IF(Z1<=3,"Z1セルに4以上を入れてね", SUMPRODUCT((A3:INDEX(A:A,Z1)="りんご")*(B3:INDEX(B:B,Z1)="みかん"),C3:INDEX(C:C,Z1)))

neptune999
質問者

お礼

こちらでも出来ました!ありがとうございました!

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

例えば次のようにしてもよいでしょう。 =SUMPRODUCT((A3:INDIRECT(ADDRESS(Z1,1))="りんご")*(B3:INDIRECT(ADDRESS(Z1,2))="みかん")*(C1:INDIRECT(ADDRESS(Z1,3))))

関連するQ&A

  • SUMPRODUCT関数 行が増えても自動で

    SUMPRODUCT関数 行が増えても自動で最終行を取得するには? エクセル2003です。 名前   サイズ みかん   S みかん   M りんご   S このような表があったら、 =SUMPRODUCT((A1:A4="みかん")*(B1:B4="S")) で、複数条件の個数が取得できますが、 行がどんどん増えていったときに、手動で A4・B4の部分を変更していくしかないのですか? それとも大体の行を見越して、 =SUMPRODUCT((A1:A100="みかん")*(B1:B100="S")) のようにするべきなのでしょうか? =SUMPRODUCT((A:A="みかん")*(B:B="S")) にしたらエラーになりました。 自動で最終行を取得したいのですが、できますか?

  • 《Excel2000》SUMPRODUCT関数での集計、空白行がある場合は?

    SUMPRODUCT関数を使い、複数の条件に合致する行のみの数値を足し上げたいと思っているのですが、集計したい数字が入っている列にところどころ空白があるせいで、結果がエラーになってしまいます。 仕様の事情で、空白のセルに0などを入れることはできないのですが、この場合はどうすればいいでしょう? =SUMPRODUCT(($A$2:$A$100=1)*($B$2:$B$100=1)*($C$2:$C$100)) 現在はこのような式です。C列に空白セルがあります。

  • 任意のセルをクリックするとそのセルの値を取得することは可能ですか?

    エクセルでこのようなことは可能か教えてください。 エクセルのシート1のB1からE3までにセットメニュー表があります。 イメージはこのような感じです。  A   B      C     D      E     1  りんご1個   150円  りんご1個   100円    みかん1個 2  りんご2個   250円  みかん1個   50円    みかん1個 3  りんご1個   200円   りんご2個   200円    みかん2個 表自体はもっと広範囲であるのですが、省略させていただきます。 ここで、この表の、たとえばB1セルをクリックした際に B1セルのりんご1個みかん1個 とC1セルの150円 という値を シート2の任意のセル(たとえばA1とB1セルに)に反映させることは可能ですか? 説明がわかりづらいかもしれませんがよろしくお願いします。

  • Excel 関数での範囲指定

     Excelでの関数計算は、ほとんど使用した事の無い初心者ですが、もし分かれば教えてください。 あるアプリケーションソフトにパラメーターを投入し実行させるとExcelにて表が出来ます。この表のある列の関連するものを他のある列で指定したものが有るか無いか LOOKUP関数を使用して結果を見ようと思います。しかし、計算を実行するごとに結果を出したい範囲が変わります。簡単に、関数内の範囲指定をする方法は無いでしょうか。    A    B    C    D    E 1  ミカン  100   南      10 2  リンゴ   150   北    15 3  ミカン   200   南      20 4  バナナ   250   南      30 5  ミカン   300   南      55 リンゴ有り 例えば、上のような表が出来今回は、B列の100~200(B列は連続して範囲指定できる)までの範囲を決め A列に「リンゴ」があれば、「リンゴ」とどこかのセルに表示させる。 説明がうまく出来ずわかりにくいかもしれませんがよろしくお願いします。(要は、関数内の範囲指定を他から指定する事は出来ないかなあ)

  • 複数条件に合致する場合のみセルを参照する

    複数条件に合致する場合のみセルを参照する関数式を探しています。   A B C 1 みかん イ 5 2 りんご ロ 3 3 いちご イ 2 4 みかん ニ 8 5 りんご ホ 6 上記のような表があって別シートに   A B C 1 みかん イ  と入れるとC1に『5』が参照値として表示されるような関数です。 複数の関数を組み合わせれば出来そうな気がするのですがわかりません。 どなたか教えて下さい。 よろしくお願いします。

  • セル範囲内いずれかの数値が他のセル範囲に含まれるかを調べたい

    EXCEL2003です。 A1~H1にそれぞれ3桁の数値が入っています。(空欄もあります。) これら範囲内の数値のいずれか一つでも他のセル範囲(次のシートのA1~A50まで)に 含まれていれば結果をJ1に表示したいのですが、可能でしょうか。 当初はJ1に、if(A1が含まれるか,"あった",if(B1が含まれるか,"あった",if(~と、 やってましたが、関数のネストレベルに引っかかってできませんでした。 MATCH関数だと一つの数値が含まれるかどうかは調べられるようですが、 検索したい数値が複数ある場合はやはりセルを分けて別々に評価するしかないのでしょうか?

  • VLOOKUP関数の範囲をセルで指定したいと思っています。

    VLOOKUP関数の範囲をセルで指定したいと思っています。 B1:参照シート名(VLOOKUP関数で使用する範囲があるシート) C2:範囲の開始位置 E2:範囲の終了位置 B3:G3:列番号(B3の値は、B6:B8の範囲で使用する列番号、 D3の値は、D6:D8の範囲で使用する列番号) これらのセルに入力された情報をもとにB6:G8の範囲にVLOOKUP関数を 反映させたいと思っています。 例えば、 B1に参照シート名「2ケタ」 C2にVLOOKUP関数の範囲の開始位置「A5」 E2にVLOOKUP関数の範囲の終了位置「G7」 B3に範囲の列番号「2」がある場合 B6に「=VLOOKUP(A6,'2ケタ'!A5:G7,2,0)の関数を入力。 B2に参照シート名「3ケタ」 C5にVLOOKUP関数の範囲の開始位置「B5」 E2にVLOOKUP関数の範囲の終了位置「H7」 C3に範囲の列番号「3」がある場合 C6に「=VLOOKUP(A6,'3ケタ'!B5:H7,3,0)の関数を入力。 といった感じです。 現在、B6に「=VLOOKUP($A6,INDIRECT($B$1&"!a5:g7"),INDIRECT("$b$3"),0)」と 関数を入力して、VLOOKUP関数の「範囲の参照シート名」と「列番号」の情報は セルから持ってくることができました。 しかし、「a5:g7」という範囲だけは、INDIRECT関数をうまく入れることができません。 どのように関数を入力したら、上手くいくのか、教えていただけないでしょうか。

  • エクセルで 2つの数値(整数)をそれぞれ列と行に対応させ、クロスするセルを指し示したい

    エクセルで、例えば A1 の数値(1,2,3...)を列番号(A,B,C...)に対応させて A2 の数値 (1,2,3...)を行番号(1,2,3...)に対応させて、クロスするセルを指し示したり、内容(数値)を参照するにはどうすればいいのでしょうか。 例をあげると、A1=4, A2=5 のときには D5 となり、A1=26,A2=10 のとき Z10 となるようにしたいのです。 やりたいことは、A1=3,A2=5,B1=26,B2=10 のときに C2 には D5からZ10までの合計を入れたい( C2=SUM(D5:Z10) )というようなことです。   上記のようなことをしたいのですがどうすれば良いのでしょうか。教えていただけないでしょうか。お願いします。

  • 【エクセル】区切り位置で分割したセルを元に戻すには

    下記↓のようなデータがあります。 =========   A    B    C     1 りんご なし  みかん 2 なし   3 みかん りんご ========= これを↓下記のようなデータにかえたいです。 =========   A 1 りんご,なし,みかん 2 なし 3 みかん,りんご ========= 元々後者のデータだったのですが、 作業のため区切り位置で前者のデータに加工しました。 が、元に戻す必要が出てきました・・・。 &を使ってやる方法だと りんご,なし,みかん なし,, みかん,りんご, となってしまうし、うまいやり方が思いつきません。 IF関数を使って、ブランクセルの場合は「,」をつけない、とかやれば できそうな気もしますが、勉強不足でどういう関数を書いたらいいか分かりません・・・。 エクセルにお詳しい方、ご教授いただければ幸いです。

  • SUMPRODUCT 複数条件と日付

    関数初心者です。Excel2000を使用しています。 SUMPRODUCT関数を使って複数条件の集計をしたいのですが、どうしても日付の列に反応してくれません。 おそらく原因はデータ元となる日付に時間まで入っているからではないかと思っています。 日付が入力されているセルのデータは 例) 2012/3/3 12:10:50 → セルの書式設定は 時刻のみ 12:10:50 集計したいのは複数条件 例) 2012/3/3 12:10:50 りんご 50  日付 と 商品名 を条件とし 数値 の合計を出したいです。 秒単位で時間計測しているのでこのデータ自体の変更と書式設定の変更は出来ません。 =SUMPRODUCT((B6:B12=B3)*(C6:C12=C3),(D6:D12)) B3のセルに「3/3」もしくは「2012/03/03」の入力で拾えるようにしたくて、 過去のの質問など参考にし(B6:B12=B3)の部分を変更しましたが、うまくいきませんでした。 やってみたことが的外れだったのかもしれません。 また、日付を条件とした場合、書式設定も影響されるのでしょうか? アドバイスをよろしくお願いします。

専門家に質問してみよう