| ホーム | 前へ | 次へ |
| 絶対番地と相対式 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| それでは問題です。 魚つりをしました。目標は70匹です。 よし君、みゆきさん、ひでぼんの3人で釣りました。 成績はそれぞれ、60匹、75匹、90匹でした。 目標に対して何匹多くまたは少なかったでしょうか? 項目の文字も入力しましょう。 エクセルの場合です。 表1
でしょうか。 目標と実績と式のEとDを入れ替えてもかまいません。 表らしくなりました。 でもちょっと待ってください。 D列です。 3人ぐらいのデータだったら大したことは有りませんが、これが何十人だったら? そこで作り替えたのが次の式です。 表2
???ちょっと変わった式になりました。 表1の場合は、これくらいの人数ならこの表でも十分でしょう。 ところが何十人だったらどうでしょう? D列に延々と目標の70が入ります。 さらに目標が変わったら全て訂正しなくてはなりません。 表3
上図のように、E列はセルごとに式を書き込めばかまわないのですが、3人ならともかく、何十人もとなると大変です。 そこで1つだけ式を作成し、後はコピーをしたいのです。 ところが=D3−D1を下の方にコピーしていくと
前講座で解説したように「=D3−D1」とは、この式のあるセルから見て、「左に2番目の列で、同じ行にあるセルの数値」−「左に2番目の列で、上に2行目のセルの数値」です。 ですから、この式をコピーすると「相対的位置関係は変化しません」から、E4やE5はこのような式になるのです。 困りましたね。 そこでE3に「$D$1」と書き込みます。 $(ダラスマーク=数字の4の上に有ります)は「絶対マーク」または「アンカー」と呼んでいます。 「$D$1」は「式のあるセルとの相対位置関係」ではなく、「D列1行目のセル」と指定するのです。 つまり =D3−$D$1は、「式のあるセルの左2番目のセルの値」−「D列1行目のセルの値」となります。 このように$マークを付けたものを「絶対番地」と呼んでいます。 例えば、$A$1なら「A列の1行目のセル」ですね。 こうしておくと、表2のように、E3だけ式を作り、その式を複写し、正しい計算をすることができます。 この関係はぜひ覚えておいてください。 さらに、この絶対番地の指定方法には応用が有ります。 $D1とか、D$1といった使い方です。 難問かな? それでは下の例を見てください。
この中で、作成した式(キーボードで作ったもの)はE3のセル=$D3−D$1だけです。 後はコピーを使ったものです。 $D3は、「D列は指定する、3は式も3行目にあるから、同じ行のところセル(相対関係)」になりますね。 D$1は、「D列は相対的な位置関係、つまり式から見て左に2つめ、$1だから1行目は指定をしておく」、です。 この式を下の方にコピーすると、$D3は、列だけは指定しているので列番号に変化はないけれど、行は変わります。 D$1は下方向にコピーしても、行番号は指定されているので変化しません。 式が右にコピーされると、=$D3−E$1となった理由も同じです。 横に移動しても$D3は、列が指定されているので変化無し、行は横方向に移動しても相対位置関係は変化しませんからね。 D$1では、DはEになりますね。 まるでマジックのような(^○^) 6つもの式を作成するのに、たった1個の式を作って後はコピーだけで・・・ この式の仕組みを正しく理解しておくと、何百、何千という式が、「たった1つ式を作って、後はコピーだけ」で済むことがあるのです。 影の声、「だったら表2で、$D$1はD$1でも良かったのでは?」 ピンポーン、正解です。 ついでですが、この下に何百と式を作るのなら、$マークが1つで済めば1つにしときましょう。 その分メモリーが少なくて済みます。 省エネってところです。 まとめておきましょう 式は、横方向にコピーすると列番号が変化する。 変化させたくないときは、列番号の前に$を付ける。 縦方向にコピーすると行番号が変化する。 変化させたくないときは、行番号の前に$を付ける。 どちらも変化させたくないときは、両方に$を付ける。 |
| ホーム | 前へ | 次へ |