- 締切済み
関数中にセルに入力した値を反映させて計算を行いたい
こんにちは Excelを用いた計算を行っているのですが 自分の知識では出来なかったために皆様の知恵を借りたいと思っています Excelで単純な足し算を行いたいのですが とあるセルに入力した値によって計算範囲を変更したものを作りたいと考えています 仮にA行1列からA行20列まで各セルに1,23…20と順番に1つの数字が各セルに入力されていたとします この時, B行1列のセルに5という数字が入力されていたら C行1列にA行1列数字とA行5列の数字の和が入力される (イメージとしたら結果として1+5より6が出力される) B行1列のセルに10という数字が入力されていたら C行1列にA行1列数字とA行10列の数字の和が入力される (イメージとしたら結果として1+10より11が出力される) ような関数を作りたいと考えています 自身の甘い考えで B行1列のセルに5という数字が入力されていたら C行1列にA行1列数字とA行5列の数字の和が入力されるのは C行1列に=A1+A(B1)と入力したら出来るのではないかと考えていたのですが どうもできないみたいです なにか方法等浮かぶ方がいらしましたら回答をお願いします
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- bunjii
- ベストアンサー率43% (3589/8249)
質問の用語に誤りがありますので正しい表現を身に着けるよう心掛けてください。 「A行1列」→「A列1行」 表の状態を表現するときは縦の並びが列で横の並びが行です。 従って、Excelシートの上にA、B、C・・・・と列記号が並び左側に1、2、3、・・・・と行番号が並んでいます。 >(イメージとしたら結果として1+5より6が出力される) 此処で「出力される」と言う表現も適切ではありません。 関数でC1セルに数式を入力すると数式の計算結果がC1セルに表示されるのですが、D1セルに関数式を記述してC1セルに出力するようなことができませんので「出力する」と言う表現は使いません。 >C行1列にA行1列数字とA行5列の数字の和が入力される >C行1列にA行1列数字とA行10列の数字の和が入力される 質問の文脈から考えれば次の数式が目的に合うと思います。 C1=INDEX(A:A,ROW(),1)+INDEX(A:A,B1,1)
- MackyNo1
- ベストアンサー率53% (1521/2850)
>C行1列に=A1+A(B1)と入力したら出来るのではないかと考えていたのですが このイメージに一番近い数式はINDIRECT関数です(セル番地を文字列で参照する)。 すなわち、B1セルに5と入力されていてA5セルを参照したいなら「INDIRECT("A"&B1)」でその値が取得できますので、最終的な数式は「=A1+INDIRECT("A"&B1)」で計算することができます。
- mar00
- ベストアンサー率36% (158/430)
C1に =IF(B1="","",A1+INDEX(A:A,B1))
- keithin
- ベストアンサー率66% (5278/7941)
>計算範囲を変更したものを作りたい とご相談には書かれていますが、 >イメージとしたら結果として1+10より11が出力される 5が入力されたら「1から5」じゃなく「1と5」が計算出来たらいいんですね。 =IF(C1="","",A1+INDEX(A:A,C1)) とかでいいです。 #(「やっぱりまちがいました」ってしらっと言ってのけるご相談者さんがあんまり多いんで。)