「式」と「戻り値」、「値」 - Excelマクロ・VBA

今日は、受講生がよくハマるネタをご紹介。

...したいのですが、一度では難しいので、分割します。
今日、知ってもらいたい or 確認してもらいたいこと。

それは、

「エクセルのセル内に入力されているもの」と
「エクセルのセルに実際に表示されるもの」は、
異なることがある、ということです。


...日本語で書くと難しいですが。
要は、こういうことです。

セルA1に、「= 5 * 3」と書き込みます。
すると、(通常であれば)セルA1には、「15」と表示されることでしょう。

このとき。

「エクセルのセル内に入力されているもの」は、「= 5 * 3」で
「エクセルのセルに実際に表示されるもの」は、「15」です。

このとき、前者を「式」、後者を「値」と言います。

では、ちょっと、用語の使い方と、考え方の練習。

セルA1に、「12」と入力します。
そして、セルA2に、「= A1 * 3」という入力しました。
さて、セルA2に入っている「式」と、セルA2の「値」は、それぞれ、何になるでしょうか?

「式」は「= A1 * 3」。
「値」は「36」。

ですね。OK。


で。次は、ちょっとややこしいかも。

セルA2に、「100」と入力しました。
さて、セルA2に入っている「式」と、セルA2の「値」は、それぞれ、何になるでしょうか?

「式」は「100」。
「値」は「100」。

と、なります。

...分かりますでしょうか?
「100」といった数値だけでも、「式」たり得る、ということです。

もう少し書くと、「式」は「戻り値」を返します。
「戻り値」とは、簡単に言うと、「計算結果」のこと。
「= 5 * 3」という式は、「15」という戻り値を返します。
セルA1の値が「12」のとき、「= A1 * 3」という式は、「36」という戻り値を返します。
「15」という式は、「15」という戻り値を返します。

..と、いうこと。

つまり、

  1. エクセルのセルに、「式」が埋め込まれる
  2. エクセルは、計算して、その式の「戻り値」を求める
  3. エクセルは、その戻り値を、「値」として表示する

というステップを踏んでいます。
慣れないと、「細かくてややこしい!」と感じられるかもしれませんが。
「なんとなく」程度でよいので、この感覚をつかんでおいてください。

エクセルの関数を作るにしても、マクロを書くにしても、エクセル内の部品のウラの組みについて理解しておくと、よりよいものを作れるようになりますし、何か失敗したときにも、ウラの仕組みを理解していると、原因の発見、問題の解決も早くなります

...ということで、明日は、この知識を前提として、初心者がよく勘違いする失敗について解説しようと思います。

公開日時: 2022/08/17 12:00