|
長々と申し訳ありません。
下記のVBAをThisworkbookモジュールに組み込んで、メニューバーを
非表示にしているのですがVBAを組んだファイルを開いたまま、
VBAを組んでいないファイルを開くと、VBAを組んでいないファイル
までメニューバーが非表示となってしまいます。
また、その状態でVBAを組んでいないファイルの右上の「×」印で
閉じようとすると、閉じることが出来ずにVBAを組んだファイルに
切り替わると共に、メニューバーも表示されるようになり、困ってます。
Private Sub workbook_open()
Dim xlAPP As Application
Application.ScreenUpdating = False
Set xlAPP = Application
On Error Resume Next
xlAPP.CommandBars("Worksheet Menu Bar").Enabled = False 'メニューバーOFF
xlAPP.CommandBars("standard").Visible = False '標準OFF
xlAPP.CommandBars("drawing").Visible = False '図形描画OFF
xlAPP.CommandBars("formatting").Visible = False '書式設定OFF
xlAPP.DisplayFormulaBar = False '数式バーOFF
xlAPP.DisplayStatusBar = False 'ステータスバーOFF
ThisWorkbook.Sheets("タグ").Visible = xlSheetVeryHidden
Sheets("台帳").Activate
ActiveSheet.Unprotect
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=True
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim xlAPP As Application
Application.ScreenUpdating = False
Set xlAPP = Application
On Error Resume Next
xlAPP.CommandBars("Worksheet Menu Bar").Enabled = True 'メニューバーON
xlAPP.CommandBars("standard").Visible = True '標準ON
xlAPP.CommandBars("picture").Visible = True '図ON
xlAPP.CommandBars("drawing").Visible = True '図形描画ON
xlAPP.CommandBars("formatting").Visible = True '書式設定ON
xlAPP.DisplayFormulaBar = True '数式バーON
xlAPP.DisplayStatusBar = True 'ステータスバーON
ThisWorkbook.Sheets("タグ").Visible = xlSheetVeryHidden
Sheets("台帳").Activate
If ActiveSheet.AutoFilterMode Then
ActiveSheet.AutoFilterMode = False
End If
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
If Me.Saved = False Then Me.Save
End Sub
そこで、VBAが組まれているブックのThisworkbookモジュールに
下記VBAを追記しました。
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Dim xlAPP As Application
Application.ScreenUpdating = False
Set xlAPP = Application
On Error Resume Next
xlAPP.CommandBars("Worksheet Menu Bar").Enabled = False 'メニューバーOFF
xlAPP.CommandBars("standard").Visible = False '標準OFF
xlAPP.CommandBars("drawing").Visible = False '図形描画OFF
xlAPP.CommandBars("formatting").Visible = False '書式設定OFF
xlAPP.DisplayFormulaBar = False '数式バーOFF
xlAPP.DisplayStatusBar = False 'ステータスバーOFF
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Dim xlAPP As Application
Application.ScreenUpdating = False
Set xlAPP = Application
On Error Resume Next
xlAPP.CommandBars("Worksheet Menu Bar").Enabled = True 'メニューバーON
xlAPP.CommandBars("standard").Visible = True '標準ON
xlAPP.CommandBars("picture").Visible = True '図ON
xlAPP.CommandBars("drawing").Visible = True '図形描画ON
xlAPP.CommandBars("formatting").Visible = True '書式設定ON
xlAPP.DisplayFormulaBar = True '数式バーON
xlAPP.DisplayStatusBar = True 'ステータスバーON
End Sub
その結果、、
メニューバー表示は解決しましたが、他の問題が出てきて困ってます。
それは、このVBAを組んだファイル内の指定したシートの
表内のデータをコピーして、新規bookを開き、形式選択で書式と
値を貼り付けた後、指定した名称で保存するというVBAを組んでいるのですが、
そこでエラーが発生しました。
上記のコードを入れる前後で、新規bookに手動でコピペしたところ、
入れる前までは「形式を選択して貼り付け」で「値」と「書式」を選択
出来たのですが、入れた後では「テキスト」とか「図」とか
excelからwordにコピペする時に表示される画面になり、「値」と「書式」
を選択できず、エラーが発生してしまいました。
何とかなりませんでしょうか。
|
|