2015-03-10
ExcelVBA覚書 Formからの情報連携
フォーム上で何のボタンを押されたのかを呼出元に返したいときとか、Public変数を利用していたのだが、面白いやり方というのをインターネットで見つけた。
FormのTagプロパティを使うのだが、「なるほど、これは便利!」と思えたので、メモしておく。
'呼出元プロシージャ(または関数)の記載例 Load HogeForm HogeForm.Show If HogeForm.Tag = "1" Then '(終了ボタン押下時の処理を記載) Else '(中止ボタン押下時の処理を記載) End If Unload HogeForm
'呼出先(HogeForm)の記載例 '終了ボタン押下 Private Sub ExitButton_Click() HogeForm.Tag = "1" HogeForm.Hide End Sub '中止ボタン押下 Private Sub CancelButton_Click() HogeForm.Tag = "0" HogeForm.Hide End Sub
使うときは、念のためフォームのInitializeプロシージャでTagプロパティを空欄にしておくといいと思った。