循環参照を極める |
||||||||||||||||||||||||||||||||||||
(1)循環参照とは? だいぶ古いCMにこんなものがあった・・・。 |
||||||||||||||||||||||||||||||||||||
丸井はどこ? 駅のそば!! 駅はどこ? 丸井のそば!! |
||||||||||||||||||||||||||||||||||||
これでは質問が堂々巡りになってしまい、結局丸井がどこにあるのかわからない。エクセルでも事情は同じで下表のように入力すると注意を促すダイアログボックスが表示される。 |
||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||
↓ | ||||||||||||||||||||||||||||||||||||
(2)循環参照をテクニックとして利用するには? このようなダイアログボックスが表示されると何か悪いことでもしてしまったかのような気分になってしまうが、この循環参照をテクニックとして利用するといろいろと役に立ち面白いことができる。ただこれを利用するには「丸井はどこ?」の堂々巡り(循環参照)をどこかで断ち切らねばならない。本当に放っておけば永遠にこの無限ループから抜け出ることができない。だから何回繰り返したら、堂々巡りをやめるという設定をするのだ。そのための下準備として予め以下の手順で設定をしておく。 1.メニューを「ツール」「オプション」と辿り、ダイアログボックスをだす。「計算方法」タブを選択。 2.「計算方法」タブを選択し「反復計算」にチェックをし、「OK」をクリック。 |
||||||||||||||||||||||||||||||||||||
尚、「最大反復回数」が堂々巡りの回数となる。上の設定では10になっているので、10回で堂々巡りは終わりとなる。 これで循環参照を利用する下準備ができた。 それではセルA1に=A1+1と入力してみてほしい。10と表示されるはずである。これはどのような理屈からだろうか。 下の表を見ながら考えてほしい。 |
||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||
式=A1+1を入力する前は当然A1は空欄である。そして空欄の初期値は0である。そこに式=A1+1を入力した瞬間に第1回目の循環が始まる。つまり初期値の0に1を加える演算である。この演算によってA1の値は0から1になる。次に第2回目の循環が始まり、現在のA1の値1にまた1を加える。そして第2回目の循環が終わるとA1の値は2となる。こういうことを順次繰り返していくと10回目の循環が終わったときにA1の値は10となる。 これが循環参照のもっとも大事な基本となる。 |
||||||||||||||||||||||||||||||||||||
次回は循環参照を利用して1から10までの和を求めてみよう。 |
(初出 2006/03/12)
|
コメント