#088 | 1つのコマンドボタンに2つの機能を持たせる方法 | フォーム、VBA | |
ある処理の「開始」ボタンと「停止」ボタンを1つにまとめたい場合があります。最初は「開始」と表示されていて、そのボタンをクリックすると処理を開始します。それと同時にそのコマンドボタンの標題が「停止」に替わって、その状態でクリックすると今度は処理を停止します。 このように1つのコマンドボタンに2つの機能を持たせるには次のようにします。ここでのポイントはStaticで宣言されたsblnStartStatus変数です。Staticで宣言されているために、このプロシージャを抜けても変数の値は保持されています。したがって、再度このプロシージャが呼び出されたとき、つまりコマンドボタンがクリックされたときに、前回のsblnStartStatus変数によって今回の処理を分岐させることができます。 Private Sub cmdStart_Click()
Static sblnStartStatus As Boolean If Not sblnStartStatus Then MsgBox "開始しました!" sblnStartStatus = True Me.cmdStart.Caption = "停止" '*************************************** 'ここに処理を実行するコードを記述します '*************************************** Else MsgBox "停止しました!" sblnStartStatus = False Me.cmdStart.Caption = "開始" '*************************************** 'ここで処理を停止するコードを記述します '*************************************** End If End Sub ※プロシージャ内でStatic変数を使う代わりに、Declarationsセクションに普通に変数を宣言しても同じ様に使うことができます。 |
|||
|
Copyright © T'sWare All rights reserved |