accdb(Wint7Ultx64/Access2010(64)で作成)にてフォーム(データシートビュー)上に配置しているテキストボックスもしくは該当フォームのショートカットメニューバープロパティにマクロ名を設定しショートカットメニューを作成しているのですが、割り当てたコマンドと違うコマンドが実行されてしまいます。
どのような対処をしたらよいかわからず少々困り中なのです。
マクロ名:macroShortCut ←これがショートカットメニューバープロパティに。
<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"><UserInterfaceMacro MinimumClientDesignVersion="14.0.0000.0000"><Statements><Action Name="AddMenu"><Argument Name="MenuName">ShortCut01</Argument><Argument Name="MenuMacroName">macroSubShortCut</Argument></Action></Statements></UserInterfaceMacro></UserInterfaceMacros>
マクロ名:macroSubShortCut
<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"><UserInterfaceMacro MinimumClientDesignVersion="14.0.0000.0000"><Statements/>
<Sub Name="ソート"><Statements><Action Name="AddMenu"><Argument Name="MenuName">ソート</Argument><Argument Name="MenuMacroName">macroSubSort</Argument></Action></Statements></Sub><Sub Name="フィルタ"><Statements><Action Name="UndoRecord"/></Statements></Sub><Sub Name="すべて解除"><Statements><Action
Name="RunMenuCommand"><Argument Name="Command">RemoveFilterSort</Argument></Action></Statements></Sub></UserInterfaceMacro></UserInterfaceMacros>
マクロ名:macroSubSort
<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"><UserInterfaceMacro MinimumClientDesignVersion="14.0.0000.0000"><Statements/>
<Sub Name="解除"><Statements><Action Name="RunMenuCommand"><Argument Name="Command">RemoveAllSorts</Argument></Action></Statements></Sub><Sub Name="昇順"><Statements><Action Name="RunMenuCommand"><Argument Name="Command">SortAscending</Argument></Action></Statements></Sub><Sub
Name="降順"><Statements><Action Name="RunMenuCommand"><Argument Name="Command">SortDescending</Argument></Action></Statements></Sub></UserInterfaceMacro></UserInterfaceMacros>
この状況で、該当フォーム上での以下の操作をすると、
1. 右クリック→ショートカットメニュー展開→ソート→解除 該当フォームがデザインビューで開く
2. 右クリック→ショートカットメニュー展開→フィルタ クラスモジュールが追加されtる
3. 右クリックショートカットメニュー展開→ソート→降順 昇順の場合トグル押下状態のチェックマークが表示されるが、表示されない
Win7Ult x64+Office2010(64)/Win7Ult x32+Offce2010(32) いずれの環境でも同様な現象です
Win7Ult x64+Runtime(2010/64) の場合、
上記2の操作で新規クラスモジュールが追加されることが、終了時保存確認が出るので現象が認められます
上記1の操作で該当フォームがレイアウトビューでいったん表示されF5押下で単票フォームに移行します。
このフォームはフォームビューの許可:いいえ/レイアウトビューの許可:いいえ となっています。
さて、どうしたものやらなんです。
ショートカットメニューのコマンドの並びを変更すること。ショートカットメニューマクロにコメントを挿入することで求めるコマンドに実行がされることを確認していますが、規則性がわからず対応できてない状況であります。
また、本件不具合なのかもと認識できた場合、どのような報告をすべきなんでしょうか?
バージョン情報:14.0.4760.1000(64ビット)/currentdb.Properties("Build")は 1150
****以下、追記しました(提示xmlをマクロエディタにペーストできるように改行入れました。)****
2番目のマクロのうち、以下の部分は
<Sub Name="フィルタ"><Statements><Action Name="UndoRecord"/></Statements></Sub> となっていますが、
マクロエディタ上では、メニューコマンドの実行/コマンド:フィルタメニューとしているのですが、コピペしてxmlを見るとUndoRecordになってしまいます。
なので、コピペしたxmlをマクロエディタ上にペーストすると、件の部分は、メニューコマンドの実行/コマンド:レコードを元に戻すになってしまう。
macroSubShortCutは、マクロエディタで以下の通り作成しています。
サブマクロ :ソート
メニューの追加
メニュー名:ソート
メニューマクロ名 macroSubSort
サブマクロの最後
サブマクロ :フィルタ
メニューコマンドの実行
コマンド:フィルタメニュー
サブマクロの最後
サブマクロ :すべて解除
メニューコマンドの実行
コマンド:フィルター/並び替えの解除
サブマクロの最後