広告
お仕事などでお馴染みの表計算ソフト、エクセルに付属しているExcelVBA(エクセルブイビーエー)というプログラミング言語を使って初心者・入門者向けにプログラミングのキホンを解説していきます!
ExcelVBAができるようになれば業務内容によってはボタン一つで大幅な業務効率化ができる他に、普段のエクセルの使い方も段違いにレベルアップする事ができます!
ベテランの方も新人さんも興味のある方はぜひ挑戦してみてください!
今回はもう少し詳しくIf命令の仕組みについて見ていきましょう。
まずは次のプログラムを実行してみてください。
'8日目 プログラム1 Sub test() Dim a As Integer Dim b As Integer Dim kekka1 As Boolean Dim kekka2 As Boolean Dim kekka3 As Boolean a = 100 b = 100 kekka1 = (a = b) b = 80 kekka2 = (a = b) kekka3 = (a > b) MsgBox "kekka1 = " & kekka1 & vbCrLf & _ "kekka2 = " & kekka2 & vbCrLf & _ "kekka3 = " & kekka3 End Sub
不思議な計算と不思議な結果が出てきましたね。
これは変数「a」と変数「b」の条件式の結果を変数「kekka1・kekka2・kekka3」にそれぞれ入れたものになります。
実は条件式は「If」命令の中だけではなく直接行う事ができて、その条件式の結果というものがあるのです。
謎のキーワードが出てきました。
「Boolean」こちらはブーリアンという変数の型の一つで「True」と「False」という2つの言葉で2種類の状態を表したものになります。
それを踏まえた上で先ほどのプログラムを一つ一つ見ていきましょう。
a = 100 b = 100 kekka1 = (a = b)
わかりやすいように変数「a,b」の内容も並べてみました。
ここでの条件は(a = b)なので「a」と「b」は同じか?ですね。
そして答えの「kekka1」の内容は「True」となっております。
次の部分も見てみましょう。
a = 100 b = 80 kekka2 = (a = b)
次は変数「b」の内容を変えてみました。
条件は最初と変わらないですね。
「kekka2」の内容は「False」になりました。
では最後もう一つ見てみます。
a = 100 b = 80 kekka3 = (a > b)
条件を変えて(a > b)、「a」は「b」より大きいか?という条件にしてみました。
「kekka3」の結果は「True」になりましたね。
広告
これはどういう事かと言いますと条件式は
条件が合っている場合は「True」
条件が合っていない場合は「False」
という結果になるのです!
さて、このへんでするどい方やプログラミングを愛してやまない方は気づいたかもしれません。
さきほどの条件式でこのような結果になるという事は直接その結果を「If」命令なんかにいれたらどうなるのだろうか?と
それを試したプログラムになります。
'8日目 プログラム2 Sub test() If True Then MsgBox "条件が「True」の場合" End If If False Then MsgBox "条件が「False」の場合" End If End Sub
結果は予想どおり条件が合う「True」の場合だけ実行されました!
そうなんです!If命令は最終的にこの条件式の結果である
条件が合っている場合は「True」
条件が合っていない場合は「False」
によって条件分岐していたのです!
これはコンピューターが電気を流す、流さないのスイッチのカタマリのような仕組みでできているからに他なりません!
そしてこの「True」の事を「真」または数字の「1」、「False」の事を「偽」または数字の「0」、さらには英語で旗を意味するフラグを立てる(True)、フラグを下げる(False)なんて言い方もしたりします。
「True」・・・「真」または「1」
「False」・・・「偽」または「0」
まあ今の時点では何の事やらという感じだと思いますがプログラミングを理解する上で大事な考え方になるので覚えておいてください。
ここからは少しプログラミングから離れてコンピューターの仕組みの一つであるオンとオフ2種類の状態しかないスイッチだけで数を表す仕組みをご紹介したいと思います。
今すぐにプログラミングに必要って事でもないので興味あればお聞きください。
「2進数」という言葉を聞いた事がありますでしょうか?
コンピューター好きなら一度は聞いた事があるかもしれません。簡単に言ってしまうと数の進み方で2になったらケタが上がる数の事を2進数といいます。
いつも私達が使っている数の進み方は10進数といいます。これは10になるとケタがあがる数の事をいいます。
123456789→10
1→10
1(1)→10(2)→11(3)→100(4)→101(5)→110(6)→111(7)→1000(8)→1001(9)→1010(10)
(カッコの中は10進数です!)
ちょっと裏ワザっぽいですがいちよう「0」と「1」だけで「10」まで数える事ができました。
そしてこの「0」と「1」をスイッチのオフ、オンに当てはめてたくさんスイッチを並べると・・・。
スイッチだけでいろいろな数を表せるようになりますね!
そんなワケあるかいっ!
という声が聞こえてきそうですが、ほんとにこういう仕組みなんかが元になってコンピューターはできているのです。
以上、スイッチだけで数を表す仕組みでした。
次回はわかりやすく便利な枝分かれ「Select」命令をご紹介します!
広告
Copyright 2016 K.N/petitetech.com