【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言

表題の件、マクロを複数個、作成。ブックに保存しています
マクロは全てボタンへ割当しました

その後、シートを保護して、マクロを実行したところ
シートを保護していない時と同じような、結果となりました
上書き保存も出来ました

ゆえに、シート保護しても通常と同じようにマクロは利用できるのでしょうか?
なお、シート保護の理由は、シートに関数がいくつかあり、間違えて壊さないように
する為です→入力が出来ないようにする為

ご存じの方、教えてください

A 回答 (3件)

こんにちは



マクロによるシート等の操作は、手操作を自動化しているものと考えることができます。
ですので、通常の「シートの保護」で保護されている内容を、マクロから変更しようとすると「実行時エラー」になります。
保護されていない処理(=手操作でも操作できる内容)であれば、問題なく実行できます。

一方で、マクロでは「シートの保護」の操作も可能ですので、
 ・シートの保護を解除
 ・保護されている内容を変更
 ・シートを再度保護
のような手順で処理すれば、保護されている内容でも変更できます。

実は、「シートの保護」にはいくつかのオプションがあり、その中の一つに
 『手操作の変更は保護するが、マクロからの変更は保護しない』
というものがあります。
このような保護のかけ方をしておくと、上記のようにいちいち「保護の解除」をしなくても、マクロからは保護の無い状態として各種の操作が可能になります。
ただし、このシートの保護のオプションは、マクロからしか設定することはできません。
https://learn.microsoft.com/ja-jp/office/vba/api …
    • good
    • 1
この回答へのお礼

シート保護にオプションがあるんですね
御指導、ありがとうございます

お礼日時:2024/10/05 19:04

そういう仕様らしいです。



Microsoft サポート - ワークシートを保護する
https://support.microsoft.com/ja-jp/office/%E3%8 …

| 重要: ワークシート レベルの保護は、セキュリティ機能として意図されていません。 単に、ユーザーがワークシート内でロックされたセルを変更できなくするためのものです。

ファイル保護だと開けないとして、ブックの保護だとまた違う?手元にExcel無くて確認できないけど。
    • good
    • 0
この回答へのお礼

勉強になりました。ありがとうございます

お礼日時:2024/10/05 19:05

ワークシート保護されていてもマクロで内容を変更できます。

保護されているかどうかはマクロで判定できるので、保護されていれば変更しないようにマクロを組むことも可能です。
    • good
    • 0
この回答へのお礼

始めてしりました。ありがとうございます

お礼日時:2024/10/05 19:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A