- ベストアンサー
Excelで文字列の組み合わせをコマンドにする方法
以下のような計算を、最初の1行目だけの式をつくり、後は式をコピーして作りたいのですどうすればいいのでしょうか。 (実際にはもっと長いので全部作るのは面倒なため) A B 1 5 =SUM(A1:A6) 2 7 =SUM(A2:A6) 3 2 =SUM(A3:A6) 4 3 =SUM(A4:A6) 5 1 =SUM(A5:A6) 6 8 =SUM(A6:A6) つまり、"A"と自分のセルの行番号を組み合わせたアドレス(?)から$A$6の範囲を作ればいいと思うんですが、どうすればいいかわかりません。 遠い昔、Lotus1-2-3でLet関数かなんかで文字列をコマンド(?)にしたような気がするんですが、Excelではどうすればいいのでしょうか? イメージはこんな感じです。 "=SUM(A" & ROW() & ":$A$6)" (A6は文字列なのでコピーしてもずれないから絶対参照にする必要はありませんね。今気がつきました。) または、もっと簡単な方法があるんでしょうか。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No.1の方の回答で良いと思うのですが、おっしゃっている方法でやるためには、 B1セルに =SUM(INDIRECT("A"&ROW()):A6) と入力すれば良いですね。
その他の回答 (1)
- nishi6
- ベストアンサー率67% (869/1280)
最初のセルに =SUM(A1:$A$6) として、コピーするのはどうですか。
お礼
早速の回答ありがとうございます。 実は、もう少し複雑な参照方法なのです。 (行番号と列番号を多少計算します。) 私が、そのために使おうとしたのが、 ADDRESS(ROW()+2,COLUMN()+1) {実際はもう少し複雑です} みたいにして、セルのアドレスの文字列を作成しました。 ところが、これは文字列なので、SUM関数ではセルの参照と見てくれませんでした。 それで、文字列をコマンドに変更する方法を知りたかったのです。 例を少し簡単にしてしまい、私の意図が伝わらず申し訳ありません。
お礼
ありがとうございます。 INDIRECT関数と、ADDRESS関数、ROW関数、COLUMN関数の組み合わせで何とか目的の結果を得ることができました。 今後ともよろしくお願いいたします。