Accessで作成したMDBが動けばいいかとRuntimeを導入したが、レポートでの右クリックが出てこない。これがないと業務が、、、、
Webでの先人の情報をコピペさせてもらい無事実現できた。感謝です。
Microsoft Office 14.0 Object Library への参照を設定
モジュール作成
Public Sub CreateReportShortcutMenu()
Dim cmbRightClick As Office.CommandBar
Dim cmbControl As Office.CommandBarControl
Set cmbRightClick = CommandBars.Add("cmdReportRightClick", msoBarPopup, False, True)
With cmbRightClick
'印刷
Set cmbControl = .Controls.Add(msoControlButton, 2521, , , True)
cmbControl.Caption = "即印刷"
'印刷
Set cmbControl = .Controls.Add(msoControlButton, 15948, , , True)
cmbControl.Caption = "印刷"
'ページ設定
Set cmbControl = .Controls.Add(msoControlButton, 247, , , True)
cmbControl.Caption = "ページ設定"
'メールで送る
Set cmbControl = .Controls.Add(msoControlButton, 2188, , , True)
'新しいグループ開始
cmbControl.BeginGroup = True
cmbControl.Caption = "メールで送る"
'PDFまたはXPS
Set cmbControl = .Controls.Add(msoControlButton, 12499, , , True)
cmbControl.Caption = "PDFまたはXPSとして出力"
'閉じる
Set cmbControl = .Controls.Add(msoControlButton, 923, , , True)
'新しいグループ開始
cmbControl.BeginGroup = True
cmbControl.Caption = "閉じる"
End With
メインフォームが開いたらこのプロシージャが実行されるように
Private Sub Form_Open(Cancel As Integer) CreateReportShortcutMenu End Sub
実装したいレポートに
Private Sub Report_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = acRightButton Then
Application.CommandBars("Form Datasheet Cell").Showpopup
End If
End Sub
これにて右クリックめでたく出現した。
他にもランタイム故のセキュリティ・Shellで呼び出すアプリのプロシージャもちょこっと手直し。別の投稿として記す予定。



コメント