MSワードはプロフェッショナルな文書をつくるためのソフトらしい
これまでにもワードマクロをつくろうと思って何かやろうとしていたけど、思い返すとドキュメント一切いじってないということに気づく。そして、またドキュメントを一切いじらない何かをつくってしまった。フォームを使うとドキュメントを一切つかわない...
VBもVBAも同じだろうという暴論のもとに
ちょうどこちらでVisual Basicでハイ&ローゲーム講座をしていたので、Word VBAでつくろうと思いました。
ハイ&ローゲームを作ろう | プログラミングとゲームの杜
たとえ、ワードでもこんなのできます。
ワードを開いてまずは「VBE」を起動。
ユーザフォームを作って、ボタン3個(Highボタン、Lowボタン、Resetボタン)、ラベル2個(数字の表示ラベル、あたり-はずれの判定の表示ラベル)を配置して、下のソースコードを書いたら完成。作ってみるとVBAとVBまったく同じというわけにはいかないね。
Dim Num As Long Sub Init() ' ランダム処理 Dim Rand As Long Label1.Caption = "?" Label2.Caption = "5より大きいか小さいか" Num = (9 - 1 + 1) * Rnd + 1 ' ボタンリセット Button1.Enabled = True Button2.Enabled = True End Sub Private Sub Button1_Click() ' Highクリックイベント If Num >= 5 Then Label2.Caption = "あたり" Else Label2.Caption = "はずれ" End If Label1.Caption = Num Button1.Enabled = False Button2.Enabled = False End Sub Private Sub Button2_Click() ' Lowクリックイベント If Num < 5 Then Label2.Caption = "あたり" Else Label2.Caption = "はずれ" End If Label1.Caption = Num Button1.Enabled = False Button2.Enabled = False End Sub Private Sub Button3_Click() ' リセットボタンクリックイベント Init End Sub Private Sub UserForm_Initialize() ' フォームが表示される前に発生するイベント Init End Sub