Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


23974 / 76732 ←次へ | 前へ→

【58113】プロシージャの呼び出し方について
質問  そう  - 08/10/3(金) 1:28 -

引用なし
パスワード
   VBA勉強中の者です。よろしくお願いいたします。

UserFormを右クリックするとメニューが現れ、その中の項目を選択すると
マクロが実行されるというものをつくる場合・・・・・・。
とりあえす以下のコードを考えました。


///////// UserForm1 フォームモジュール //////////////////////////

Dim myCB As CommandBar

Private Sub UserForm_Initialize()

  On Error Resume Next
  CommandBars("tbMenu").Delete
  On Error GoTo 0
  
  Set myCB = CommandBars.Add(Name:="tbMenu", _
       Position:=msoBarPopup, Temporary:=True)
  
  With myCB
    With .Controls.Add(Type:=msoControlButton)
      .Caption = "第1次変換モード"
      .OnAction = "FirstStringConv"
    End With
    
    With .Controls.Add(Type:=msoControlButton)
      .Caption = "第2次変換モード"
      .OnAction = "SecondStringConv"
      .BeginGroup = True
    End With
  End With

End Sub


Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As  Integer, ByVal X As Single, ByVal Y As Single)

  If Button = 2 Then
    myCB.ShowPopup
  End If


End Sub


Private Sub UserForm_Terminate()

  On Error Resume Next
  CommandBars("myCB").Delete
  On Error GoTo 0
  
End Sub


以上実行すると、フォームを右クリックするとメニューが表示され、
そのメニューから項目を選択すると標準モジュール内のプロシージャ
[ FirstStringConv ] 、[ condStringConv ] を呼び出せました。

ここからが質問なのですが、このメニューから標準モジュール内では
なく、フォームモジュール内に書かれてあるプロシージャを呼び出す
という場合には、 .OnAction = の次にどのような書き方で実行したい
プロシージャ名を指定すればよいのでしょうか?

さっぱりわかりません。
どなたかご指導お願いいたします。

1 hits

【58113】プロシージャの呼び出し方について そう 08/10/3(金) 1:28 質問
【58114】Re:プロシージャの呼び出し方について ichinose 08/10/3(金) 6:55 発言
【58115】Re:プロシージャの呼び出し方について そう 08/10/3(金) 9:29 発言
【58121】Re:プロシージャの呼び出し方について ichinose 08/10/4(土) 8:21 発言
【58122】Re:プロシージャの呼び出し方について そう 08/10/4(土) 9:59 お礼

23974 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free