シート保護をかけているブックに対して、処理するマクロがあるのですが、
毎回、
シート保護解除→データ処理→シート保護(パスワード付き)
を繰り返すのが面倒なので、
下記の様に、処理直前にマクロによる変更を許可する処理を入れています。
ActiveSheet.Protect UserInterfaceOnly:=True, Password:="vwxyz"
もともと、パスワード付きシート保護がかかっていてもエラーを返されることがなかったため、おまじないとして先頭に置いてますが、何度も重複してても問題なのでしょうか?
つまり、一つのマクロの中で、他のブックやシートに切り替える度に入れています。
「それで問題ない、大丈夫」とか
「本当はやらない方が良い」とか「好ましくない」とか詳しい方の見解をお聞かせ願えないでしょうか?
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>ActiveSheet.Protect UserInterfaceOnly:=True, Password:="vwxyz"
これ自体は悪さはしないでしょうが、
このまま保存して、開いたときは保護されていないはず。
不安なのできっちりテストしてみました。
下記のファイル・シート構成です。
マクロ本体.xlsm
01.xlsm(シート2枚)
02.xlsx(シート2枚)
マクロ本体のマクロによって、01と02のブックを開き、
各シートの処理直前に「ActiveSheet.Protect UserInterfaceOnly:=True, Password:="vwxyz"」を入れました。
処理後、上書き保存でブックを閉じるようになっています。
まず、01、02ともシートにパスワード保護がかかっている状態でマクロ実行したところ、
01、02ともにパスワード保護がかかっておりました。
次に、01、02ともシートにパスワード保護がかかっていなかった状態でマクロ実行したところ、
01、02ともにパスワード保護がかかっておりました。
つまり、この1行を入れておくだけで、事前に保護かけ忘れていたとしても、必ず保護をかけなおしてくれると想定できる結果となりました。
よろずやkinchan さんの気のせいって事でよろしいですね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBA ドロップボックスで月を選択するとそれ以降のデータが残るようにしたい。 3 2022/12/16 14:53
- Visual Basic(VBA) VBAでシートの保護をかける際に「書式設定の変更」を有効にする 1 2023/04/17 18:18
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Visual Basic(VBA) 特定の文字を含むシートだけマクロ処理をしたい 1 2023/05/22 01:43
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/03/01 15:44
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
ActiveSheet.Protect UserInterfaceOnly:=Trueの書き場所は
Excel(エクセル)
-
エクセルVBAでブック保護のUserInterfaceOnly:=Trueはダメ?
Excel(エクセル)
-
EXCEL(VBA)でシート保護がかかったシートにクリックボードから貼り付けしたい
Visual Basic(VBA)
-
-
4
EXCELマクロ 保護されているシートのダイアログを表示させない方法
Visual Basic(VBA)
-
5
【Excel】他ブックからOpenされたブックはUserInterfaceOnlyが効かない?
その他(Microsoft Office)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
VBAでブック保護非保護を判定するには?
Excel(エクセル)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
Excelシートの保護時にデータの並び替え
その他(Microsoft Office)
-
10
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
11
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
12
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
13
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
14
Excelで事前にセルに入力した言葉をランダムに表示
Windows Vista・XP
-
15
EXCEL シート保護するとマクロが正常動作しない
Excel(エクセル)
-
16
アクティブになっている行をマクロで削除したい
Excel(エクセル)
-
17
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
18
エクセル シート保護された共有ファイルのマクロ実行
Excel(エクセル)
-
19
Excelでのセル内容の高速消去方法
その他(プログラミング・Web制作)
-
20
Excelシート上のマクロを登録したボタンの削除が出来ません
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 検索して一致したセル...
-
別のシートから値を取得するとき
-
同じ作業を複数のシートに実行...
-
ユーザーフォームに入力したデ...
-
シートが保護されている状態で...
-
シートをコピーして コピーした...
-
エクセルで通し番号を入れてチ...
-
イベントの違いを教えてください。
-
ExcelVBA シート名を複数セルか...
-
VBA 存在しないシートを選...
-
コマンドボタンをクリックでシ...
-
Excel VBA マクロ あるフォルダ...
-
Excel マクロについての相談
-
特定の文字を含むシートだけマ...
-
XL:BeforeDoubleClickが動かない
-
Excelマクロのエラーを解決した...
-
エクセルのマクロについて教え...
-
エクセルVBA Ifでシート名が合...
-
vbaマクロについて シート1のA...
-
vbaでworksheetfunctionでの複...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
同じ作業を複数のシートに実行...
-
ExcelVBA シート名を複数セルか...
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
VBA 存在しないシートを選...
-
実行時エラー'1004': WorkSheet...
-
特定の文字を含むシートだけマ...
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
XL:BeforeDoubleClickが動かない
-
VBA 複数の各シートに行を追加...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
Excel VBA 複数行を数の分だけ...
-
for 文の 繰り返し処理に使える...
おすすめ情報