• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel 2007 VBA マクロにショートカットを割り当てる)

Excel 2007 VBA マクロにショートカットを割り当てる

このQ&Aのポイント
  • VBAマクロを使用してExcel 2007でショートカットキーを設定する方法
  • Excel 2007のUserFormにGotoNextItemボタンを追加し、ボタンをクリックするとマクロが実行される仕組みについての質問
  • UserFormがフォーカスされていない場合でもショートカットキーを使用してマクロを実行する方法についての質問

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

  • ベストアンサー
  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.1

EXCEL2000ですが ツールのマクロ→マクロで マクロ(proc_GotoNextItem)を選択しオプション でショートカットを登録できてましたが、2007ではなくなったのでしょうか。 マクロで登録なら下記のとおり Application.MacroOptions Macro:="proc_GotoNextItem", ShortcutKey:="N"

TYWalker
質問者

お礼

なるほど! マクロ設定でショートカットを登録できることは知っていましたが、他の人に配布するので VBA でやりたかったんです。 マクロを設定するところを別のマクロに登録すればよかったんですね! 2007でもできました!以下のようです。 Application.MacroOptions Macro:="bookName.XLSB!proc_GotoNextItem", _ Description:="", ShortcutKey:="N" この bookName.XLSB! の部分を、同じブックの Public サブルーチンを呼び出しているので削除しましたが、なぜか削除すると動きません。 (_Application オブジェクトは失敗しました、と言われます) でも、これは書くことにすれば問題ないですね。 あとちょっと問題があって、ダイアログがフォーカスがない場合は Shift+Ctrl+N で行くんですが、ダイアログにフォーカスがある場合は(ダイアログがフォーカスを取るので?)使えません。 現在はボタンにアクセラレーターを割り当てているので、ダイアログにフォーカスがあるときは Alt+N になっています。 ちょっとややこしいですね (^^;;; とまれ、ありがとうございました!

TYWalker
質問者

補足

自作自演ですみません。 以前別件で教えてもらった F1 でヘルプを表示させる方法 http://okwave.jp/qa4725338.html の応用でダイアログにフォーカスがあるときも Shift+Ctrl+N でマクロを呼び出すことができました。 ダイアログにフォーカスがないときはo_chi_chiさんに教えていただいたやりかたでバッチグーです。 ということで全部解決しました!!! ありがとうございます!!!

関連するQ&A