• ベストアンサー

タブのページを切り替えたらイベントを発生させたい

図のようにフォーム上にタブを乗せました。 ページ1とページ2があるのですが ページ2がアクティブになったら(ページ2をクリックしたら)イベントを発生させたいのですが、どうすればいいでしょうか? Private Sub ページ2_Click() MsgBox "ページ2_Click" End Sub として実験してみましたが タブの部分(ページ2と書かれているつまみの部分)にカーソルを当てて、アクティブにしただけではダメで つまみの下をクリックしないと発生しませんでした。 なのでページ1からページ2を上にしてイベントを発生させるには 1回目→つまみの部分をクリック 2回目→つまみの下の部分をクリック と言うように2回クリックしないとイベントが発生しません。 理想はつまみの部分をアクティブに(クリック)すると イベントを発生させたいです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.1

タブコントロールにChangeイベントがあります。 また、タブのValueプロパティを見れば表示ページが分かります。

qwfgjo
質問者

お礼

できました! ありがとうございます。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

#1でお答えが出ていますが エクセルVBAでテストをやりました例ですが、 ユーザーフォーム上にマルチページを2ページ作りました。 Private Sub MultiPage1_Change() MsgBox "multipage" & MultiPage1.Value + 1 & "が選択されました" End Sub で切り替えるごとに、選択したページ番号を表示します。 ーー また UserForm1 で Private Sub UserForm_Click() If UserForm1.MultiPage1.Value = 1 Then UserForm1.MultiPage1.Value = 0 Else UserForm1.MultiPage1.Value = 1 End If End Sub を入れると、ユーザーフォーム上のクリックで、マルチページが2つしかない場合は、相互に入れ替わります。

qwfgjo
質問者

お礼

ありがとうございます。参考になりました。