- ベストアンサー
Excel: 関数のセル指定に別のセルの数字を使いたい
ある範囲の合計を求める場合「@sum($A5:$A10)」としますが、合計を求める範囲を 簡単に変更できるよう、例中の5と10に相当する部分を別のセルに書いておきたいのです。 例えば、C1のセルに5,C2のセルに10を入れておいて「@sum($A(C1の値):$A(C2の値))」 のようにしておけば、C1とC2の数値を変えるだけで計算範囲を変えられるのでは、と。 このようなことは簡単に(?)可能なのでしょうか? 分かりづらい説明で申し訳ありませんが、御知恵をお貸しいただければと思います。 よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
INDIRECTという関数を使います。( )内はアドレスを示す文字列です。 たとえば、C1のセルに5,C2のセルに10が入っているなら、 =SUM(INDIRECT("A"&C1&":A"&C2")) とかけば、A5:A10の和が求められます。
その他の回答 (3)
- SAKURAMYLOVE
- ベストアンサー率30% (162/533)
#1さんの補足で、 >参照するデータは別のワークシートにあるんです... その場合は、例えば、Sheet1のセルC1とC2に範囲が入力されている場合、 =SUM(INDIRECT("Sheet1!A"&C1&":A"&C2)) とすれば、他のシートでも参照できます。
お礼
回答有難うございます。 やりたいことができてスッキリしました。
- takibo
- ベストアンサー率57% (116/200)
他シートを参照すのであればSUM関数とOFFSET関数の組み合わせで出来ると思います。 それぞれの引数の意味は参照サイトでご確認ください。 【例】Sheet2のA5:A10の合計 =SUM(OFFSET(Sheet2!A1,4,0,6,1)) これを質問のように「C1=5」「C2=10」と入力するように編集すると =SUM(OFFSET(Sheet2!A1,C1-1,0,C2-C1+1,1)) となります。
お礼
回答有難うございます。参考にさせていただきます。
- momokasan
- ベストアンサー率42% (3/7)
マト外れだったらごめんなさい。 C1とC2に値を直接入力されるのだったら、 =SUM(C1,C2)でよいのでは? カンマで区切れば、離れたセルでも足し算に追加できるので、これでどうでしょうか?
お礼
回答有難うございます。参考にさせていただきます。 こちらの説明が下手ですみませんでした。
お礼
早速の回答有難うございます。便利な関数を紹介いただき、何とか使えそうです。 別のワークシートの参照方法も御教示いただければ幸いです。
補足
INDIRECT関数... 知りませんでした。確かに、同一シート内ならばやりたいことができることを確認できました。 が、実は参照するデータは別のワークシートにあるんです... で、INDIRECT関数の引数に"'ワークシート名'!"が入ると、#REFエラーになってしまいます... 何か解決策がありましたら、御教示いただけますでしょうか?