エクセルに大切なデータが入力されています。
では、その大切なデータを別の人はしっかり見てくれるでしょうか・・・
この内容は絶対に見てもらいたい!
注意をひきつけたい!
見てもらってナンボならば目立たせるのが有効的です。
今回はエクセルにあるデータを出力させる(人間に強制的にみせる)ことをしてみます。
まるで、機械が話しかけているようにしてみましょう。
サンプルダウンロード
実際の動きを見るのが一番です。
ダウンロードをして、ボタンをクリックするだけの簡単サンプルを用意しています。
小窓(ダイアログ)を呼び出してみよう
MsgBox関数を使うとダイアログ(小窓)を呼び出して、文字を表示できます。
——————プログラム構文——————
MsgBox “表示する文字”,ボタンの種類,”小窓のタイトル”
——————————————————
【解説】
ダイアログが強制的に出現して、表示する文字を表示させます。
この関数にはYes ・Noを選択させるボタンも追加できます。
ボタンの種類に以下の文字(おまじない)を入れると様々なパターンのボタンが使えます。
vbOKOnly →[OK]ボタンのみを表示
vbOKCancel →[OK]ボタンと[キャンセル]ボタンを表示
vbYesNoCancel →[はい]、[いいえ]、および[キャンセル]の3つのボタンを表示
vbYesNo →[はい]ボタンと[いいえ]ボタンを表示
実例を見ながら
——————プログラム——————
MsgBox “この文字は「プログラム内で書いた文字」です“, vbOKOnly, “メッセージ1“
——————————————————-
【解説】
ダイアログが強制的に出現して、この文字は「プログラム内で書いた文字」ですと表示されます。
また、ボタンの種類を vbOKOnly としているので OKボタン が出現しています。
戻り値とは?
戻り値とはプログラムが実行されて、処理された「答え」と思えばOKです。
人間がOKボタンを押すと、戻り値というコンピュータが決めた値が出力されます。
コンピュータはYes とか No とか言えないので、数字や特殊な暗号で返答しているわけです。
戻り値があることで、人間とコンピュータは会話ができるわけです。
もっと言えば、機械と会話をするときに返答のルールさえ分かれば、機械と意思疎通ができるようになるということです。
<返答ルール(戻り値の例)>
[OK]ボタンが押された → 戻り値は1
[キャンセル]ボタンが押された → 2
[はい]ボタンが押された → 6
[いいえ]ボタンが押された →7
戻り値をうまく使うことで
戻り値(機械からの答え)が分かれば、ループ処理やIf文に組み合わせることができます。
例)Yes/Noボタンが押された時の戻り値(vbYes / vbNo)を判断しメッセージを返す
——————プログラム——————
Dim reply As Long —①
reply = MsgBox(“できましたか?”, vbYesNo) —②
Select Case reply
Case vbYes —③
MsgBox “おめでとう!!!”
Case vbNo —③
MsgBox “まだまだ、諦めずに!伸びしろしかないですよ!”
End Select
————————————————
【解説】
①ここでの変数名はreplyです。
②MsgBox関数からYes / No のボタンが押されたときの戻り値(vbYes / vbNo)をreplyに入れます。
③後はSelect Caseで判断して、適切なメッセージを返答します。
まとめ
入力だけではなく出力する方法を学びました。
これでコンピュータとコミュニケーションが取れる状態になったわけです。
また、コンピュータからの返答(戻り値)が帰ってくることもわかりました。
戻り値がわかればその返答に対してプログラムを書いていけると思えたらよりGOODです!