2017-01-24 25 views
1

Excelの(2010)リボンで自分のメニューを作成しようとしています。VBAを使用してExcelメニューを編集できません

私は 'テスト'メニューを作成するために以下のサブを書きましたが、メニューがControlsコレクションにリストされている以外に作成されたという証拠は見つかりません。

私はコードサンプル(example、これは私のどちらでもうまくいきません)の束を他の人からも調べたので、私はすべてを正しく実行したように感じます。

私の質問は2倍だと思いますが、下のコードではYOUR Excelに新しいメニューが表示されます。

Sub CreateInterface() 
    Dim Controls As CommandBarControls 
    Dim CmdBar As CommandBarControl 
    Dim NewMenu As CommandBarControl 

    Set Controls = Application.CommandBars("Worksheet Menu Bar").Controls 

    Set NewMenu = Controls.Add(Type:=msoControlPopup, Temporary:=True, before:=Controls.Count) 
    NewMenu.Caption = "&Test" 
    NewMenu.Visible = True 
    For Each CmdBar In Controls 
     Debug.Print CmdBar.Caption & "|" & CmdBar.Tag 
    Next 
End Sub 

EDIT:D.O.へ

感謝私は、コードがリボンに新しいメニューを作成していない(デフォルトのもの(ホーム、インサート、ページレイアウトなど)のように)作業していることがわかります。

これは私の知る限りでは、これはメニューの1つではなく新しいメニューを作成することになっていましたが、どうすれば実際に新しいメニューを作成できますか?

+0

私のために働いた。私はExcel 2010を持っています。 –

+0

その場合、これは私のコードの外のExcelの設定に関連している必要があります。 – sgp667

+0

@ D.O。お問い合わせありがとうございます – sgp667

答えて

1

私の知っている限り、旧式(2007年以前)のCommandBarsとコントロールの方法は、「アドイン」リボンタブにボタンを追加するだけで時代遅れです。これは古いOfficeソリューションとの下位互換性のためです。そのため、2007年以降のOfficeアプリでも(幾分)使用することができます。

今後の方向(Office 2007以降の使用を計画している場合)は、リボン自体を変更することです。完全に新しいパラダイムであり、リアルタイムのカスタマイズはまったく異なる方法で行われますが、それが難しいとは言いませんが、それは非常に便利です。リボンのチュートリアルをグーグルで紹介し、カスタムUIエディタ "ツールを使用してリボンコードをOfficeファイルに追加します。 Ron de Bruinのウェブサイトは、より多くの情報のために常に良いリソースです。

関連する問題