【保存版】2013年度発売全パチスロアプリ一覧(iPhone,iPad)

【Access】ショートカットメニューバーの2003から2010への移行方法について。

Access2010ショートカットメニューバー

Office2003のサポート終了が来年の4月にせまっています。XPの終了とも
かさなっていますので、この機会にOfficeをバージョンアップすることも
多いかと思います。

そんなかきいれ時(?)の状況の中、
先日、Access2003ベースで作成されたシステムをAccess2010環境で動作
させる必要があったのですが、一部とまどった点がありました。

そのシステムでは、レポートプレビュー時に、ショートカットメニューバーを
呼出すつくりになっていました。(右クリックででてくるメニューです。)
ショートカットメニューは、以下の4つのコマンドが設定されていました。
閉じる、ページ設定、印刷、エクスポート

この中のエクスポートがAccess2010では、以下のエラーが発生して
動作しません。
「このバージョンではサポートされていない機能を含む操作を実行しようとしました。」

さて、どうしましょうか?

<Access2003でのショートカットメニューバーの作り方>


まず、Access2003でのショートカットメニューバーの作り方を
押さえます。GUIでの作成が可能です。
作成方法は、
独自のショートカットメニューバー作成方法:AccessTips047
こちらも押さえておいてください。
独自のメニューバー作成方法:AccessTips046
これで、ショートカットメニューの作成が可能です。
既存のプログラムのショートカットメニューはこの方法で
作成されていたと思います。(VBAのコードが存在しなかったので。)

レポートの右クリックから呼出す場合は、各レポートのプロパティーの
その他=>ショートカットメニューバーに
作成したショートカットメニューバー名を指定します。


<Access2010でのショートカットメニューバーの設定方法>


さて、Access2010ですが、旧形式のメニューバーのGUIでの操作ができません。
なので、VBAから設定を行います。

以下サンプルは、すでにショートカットメニューバーが存在することが前提
のソースです。

Function ReportMenuBar_Make()
'2013/12/05 *********************************************************
' Access2003のレポートエクスポート機能が廃止されたため、
' 代替エクスポート(EXCEL出力)を設定する
'*********************************************************


Dim strName As String
Dim cnt As Variant
Dim cb As Object

'対象ショートカットメニューセット
strName = "ここに既存のショートカットメニュー名を記述"

'既存コマンドを全削除します
For Each cnt In CommandBars(strName).Controls

 CommandBars(strName).Controls.Item(1).Delete

Next

'コマンドを追加していきます
Set cb = Application.CommandBars(strName)

'閉じる
With cb.Controls.Add(1, 923)
 .Caption = "閉じる(&C)"
End With

'ページ設定
With cb.Controls.Add(1, 247)
 .Caption = "ページ設定(&U)..."
 .BeginGroup = True
End With

'印刷
With cb.Controls.Add(1, 4)
 .Caption = "印刷(&P)"
End With

'エクスポート - Excel
With cb.Controls.Add(1, 11723)
 .Caption = "エクスポート - Excel(&X)..."
 .BeginGroup = True
End With

Set cb = Nothing

MsgBox "レポート用ショートカットメニューバー:[" & strName & "]設定完了しました。"

End Function

標準モジュールに上記コードを貼り付けて、
イミディエイトウインドから、
?ReportMenuBar_Make
を実行すると、Access2010で使用可能なコマンドでショートカットメニューが
作成されます。

<完成イメージ>
Access2010ショートカットメニューバー_原寸

(イミディエイトウインドの使い方)
イミディエイトウインドウでデバッグ

(参考)
officeへの参照設定が必要ですが、VBAでのすぐれたサンプル。
ショートカットメニューの作成
このエントリを見て、なんとかいけそうだと思いました。
access2010でデータベース毎にカスタムメニューを表示することは可能か
ID一覧があります。自分で調べるのがめんどくさい方どうぞ。
CommandBar ID 一覧(Office 2010)
[Google PR]

Twitterはじめました。プラプラ | Twitter

<< 【CakePHP】Twitterでは画像は23文字、URLは22文字もしくは23文字でカウントされます。
【SQLServer】(自己責任で)32bitOffice環境で64bitMicrosoft.ACE.OLEDB.12.0プロバイダを導入する方法。 >>

[関連エントリ 最新5]

[Google PR]


[最新エントリ 5]

>>トップページ
人気カテゴリ:AccessTips SQLServer CakePHP iPad
過去ログ(全記事一覧)

コメント
コメントする(お気軽にどうぞ)









この記事のトラックバックURL
トラックバック
カテゴリー
プロフィール
お問い合わせ
Powered by NINJA TOOLS
links
recent comment
  • 【Access】vbaでhmacが正しく計算できた!!
    まさ (06/01)
  • 【Access】AccessReportMailメール送信時のポートを25から587へ
    わら (05/31)
  • 【SQLServer】超シンプル!再帰CTE(共通テーブル式)で連続データを作成する。
    sazi (09/08)
  • 【あまっちゃお】Amazon商品検索「あまっちゃお」プロジェクト始動。Ver00-06-00 β
    カメちゃん (07/31)
  • 【Access】あれ?DoCmd.RunCommand acCmdSaveRecordの内部仕様が変わった?
    花姉 (03/17)
  • 【Access】実行中のmdb(自分自身)をバックアップコピーする方法。
    亀 (02/06)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    管理人 (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    あ (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    K (11/13)
  • 【VAIOP】VaioXと両持ちできるものすっっごくマニアックなケース。当たり前ですが在庫限り。(笑)
    管理人 (08/04)
recent trackback
  • 【Access】2003安全でない式がブロックされていませんとセキュリティーレベル。
    awgs Foundry (10/29)
  • 【VAIOtypeP】液晶保護シートは、新車のカバーではない。レイアウト社液晶/天板保護フィルムセットRT-VP1FS1
    XMLがキライ。 (04/09)
  • Vistaから、LinkStation(NAS)にアクセスできません。
    そのほかいろいろ (09/06)