HOME はこちら

「アメリカが上がったら寄付ロング」「アメリカが下がったら寄付ショート」。
米国に逆張り「寄り→引け」売買<たぶん世界で最もカンタン>検証法!

5. <ステップ3>もし、ステップ2の結果が「データなし」ならば…

そのセルが「#N/A」かどうかを判定する

ステップ3は、「ステップ2で出てきた結果が『#N/A』ならば、ステップ1で出たのと同じ値(行番号)を、『#N/A』でないなら(つまり同じ値があるなら)、ステップ2ででてきた値よりも1若い値を表示させる」という作業です。

これには、ステップ1,2とは違う関数を使います。

今度はどういう関数かというと、「もし、『それは△△△だ』というのが本当ならば、こういう値を、もし、『それが△△△だ』というのがウソならば、こういう値を、そのセルに入れる」という機能です。

つまり、「それが△△△だ」という前提をまず与えておき、その真偽を問い掛けて、 「真ならばこの値」「偽ならばこの値」という具合に、表示させる値を指定するわけです。この関数は「IF関数」と呼ばれます。

ステップ3の場合、真偽を問い掛ける前提事項「△△△」は、「ステップ2の結果が『#N/A』だ」です。そのセルに入っているのが「#N/A」ならば、それは本当(真)、「#N/A」でないならば、それはウソ(偽)ということになります。

この「#N/Aかどうか」を判定ができる関数がまた別にあります。「ISNA」という関数です。この関数も、このステップ3で使います。

「関数」の中に別の「関数」を入れる??

では、ステップ3をやってみましょう。

まずは、ステップ2の隣のF列を「ステップ3」と名付けておきます。

F列2行目を1クリックして、枠の色を濃くした状態で、ここでまた「fx」をクリック。「関数の挿入」の箱を出てきたら、今度は「関数の分類」で「論理」を選びます。

<図 5−1>

「関数名」の欄に「IF」が入っています。さっき紹介した「IF関数」です。これを選択して「OK」をクリック。

<図 5−2>

3つの空欄がある「関数の引数」の箱が出てきました。

一番上の「論理式」の空欄には、「それは△△△だ」という、真偽を問う前提となる事項の「式」を入れます。このステップ3の場合なら、「それは『#N/A』だ」という式です。

「それは『#N/A』だ」という「式」って何でしょうか。

そうです。ここで「ISNA関数」が登場します。

キーボードの文字を「半角・英数」にして、まず大文字で「ISNA()」と手入力します。「()」は普通の丸カッコです。

この「()」の間にカーソルを当てて1クリック。その状態で4月1日の行のステップ2のセル(E列2行目)をクリックすると、「論理式」の欄が「ISNA(E2)」となります。

<図 5−3>

これが「E2のセルは『#N/A』だ」という真偽を問う事項を表す式なのです。

次は、2番目の空欄「真の場合」です。この欄には「E2のセルが『#N/A』だ、というのが本当ならば、どういう値を入れるか」を指定します。

ここでは、「ステップ2で出てきた結果が『#N/A』ならば、ステップ1と同じ値を表示させる」ということですから、4月1日の行のステップ1のセル(D列2行目)をクリック。すると、空欄に「D2」と入力されます。

<図 5−4>

そして、最後の空欄「偽の場合」には、「E2のセルが『#N/A』だ、というのがウソならば、どういう値を入れるか」を入れます。

ステップ2が「#N/A」でないときには、ステップ2の値よりも1つ若い数値を表示させる、ということでしたから、まず4月1日の行のステップ2のセル(E列2行目)をクリックし、さらにテンキーで「−(引く)」「1」を入力します。

<図 5−5>

3つの空欄が埋まったところで「OK」をクリック。

<図 5−6>

4月1日のステップ3のセル(F列2行目)に「1」と表示されました。

4月1日のステップ2の値が「#N/A」ではなかったので、ステップ2の値「2」から1を引いた「1」が出てきたわけです。

これもフィルダウンします。

<図 5−7>

4月2日は、ステップ2が「#N/A」でした。この場合は、「ステップ1と同じ値を表示させる」というわけで、ちゃんと「2」が入っています。

これでステップ3まで完了しました。

6. <ステップ4>行番号に対応するS&P500の日付と引値を表示させる

Top に戻る
Copyright (C)2010 Nadeshiko Investment Co., Ltd. All Rights Reserved.