特定のコントロールを指定してIDを調べるには
 特定のコントロールを指定してIDを調べるには(例えばワークシートメニュ
ーバーの左から数えて四番目”挿入”メニューの5項目目の”グラフ”のIDを
調べるには・・・)

Sub GetCtrlID()

    Dim CBar As CommandBar
    Dim CPop As CommandBarPopup
    Dim CButton As CommandBarButton

    Set CBar = CommandBars(1)
    Set CPop = CBar.Controls(4)    'あるいは("挿入(&I)")
    Set CButton = CPop.Controls(5)  '("グラフ(&H)...")

    MsgBox CButton.Caption & vbCrLf & CButton.ID

End Sub

※コントロールはIndex数値やIDでも指定できますが、97、2000で数値が異なる
こともあるため両方でアプリケーションを使用する可能性のあるときは上記のよ
うな方法で確認する必要があります。例えば”ファイル”メニューのIndexは
印刷関係のコマンドのIndexに若干のずれがあります。キャプションによる指定も
97ではカタカナが半角であったりなどしますので、この場合はIDは同じですから
IDで指定してFindControlを用いる方がより正確であるといえます。

(参考)
テクニック集:コマンドバーのコントロールを指定して実行
テクニック集:コマンドバー機能一覧を作成する
テクニック集:Visual Basic Editor コマンドバー機能一覧
テクニック集:メニューバーへのコントロール追加と処理の分岐
テクニック集:ワークシートメニューバーの機能一覧

Excel97,2000



戻る


Excel Word Access VBA! モーグ