
シートにPrivate Subが組み込まれた状態で、そのシートを別のブックに移動した場合、Private Subも同時に移動されてしまいます。
シートの移動を行った場合Private Subのみ移動しない方法はないのでしょうか?
埋め込んであるのは
Private Sub Worksheet_Deactivate()
On Error Resume Next
CommandBars("××").Delete
Call ***
End Sub
となっています。
別ブックに移動した場合、Resume Nextとなっているのにエラーで停止します。このエラーを出さない方法でも構いません。
別の方法として新しいシートを作成してCellsコピーを行うと共に、印刷範囲を指定してから移動する方法も試したのですが、シートに複数のページがある場合は微妙に印刷範囲がずれてしまって上手くいきませんでした。
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
コードをSheetモジュールではなくて
ThisWorkbookモジュールのSheetDeactivateイベントに書いておけばいいと思いますが。
'---------------------------------------------
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If Sh.Name = "該当シー名" Then
On Error Resume Next
CommandBars("××").Delete
Call XXXX
End If
End Sub
'----------------------------------------------
以上。
この回答への補足
Callは出来るのですがCommandBars("××").Deleteが実行されません。
On Errorを解除すると
「実行時エラー’91’
オブジェクト変数またはwithブロック変数が設定されていません。」
と出てきます。
Sheetモジュールに埋め込んでいる場合は問題なく動作するのに何故なのでしょうか?
自己解決いたしました。
CommandBars("××").Deleteを
Application.CommandBars("××").Visible = Falseとすると実行する事が出来ました。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IFステートの中にWithステート...
-
【VBA】指定した検索条件に一致...
-
エクセルのマクロでアクティブ...
-
別のシートを参照して計算する方法
-
コンボボックスとオートフィル...
-
Excelマクロ 変数に代入した条...
-
エクセルのマクロで条件一致の...
-
VBA FIND next複数の条件
-
excelのマクロで該当処理できな...
-
実行時エラー'1004': WorkSheet...
-
マクロを使って、シート印刷完...
-
vbaエクセルマクロ RemoveDupli...
-
VBA オートフィルター繰り返し
-
実行時エラー1004「Select メソ...
-
【変更】ファイルを閉じてダイ...
-
VBAで指定シート以外の選択
-
エクセル・マクロ シートの非...
-
Excelマクロのエラーを解決した...
-
シートが保護されている状態で...
-
セルのコピーで「オブジェクト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
特定の文字を含むシートだけマ...
-
実行時エラー'1004': WorkSheet...
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
エクセルVBA Ifでシート名が合...
-
実行時エラー1004「Select メソ...
-
VBA 存在しないシートを選...
-
エクセルで通し番号を入れてチ...
-
VBA 検索して一致したセル...
-
XL:BeforeDoubleClickが動かない
-
VBA 指定した回数分、別シート...
-
VBAマクロでシートコピーした新...
-
シートが保護されている状態で...
-
ブック名、シート名を他のモジ...
-
【VBA】全ての複数シートから指...
-
別のシートから値を取得するとき
-
ExcelのVBAのマクロで他のシー...
-
Excel チェックボックスにチェ...
おすすめ情報