Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13596 / 13644 ツリー ←次へ | 前へ→

【4569】ActiveSheet.Protect UserInterfaceOnly:=True について 日高久雄 03/3/27(木) 10:12 質問
【4578】Re:ActiveSheet.Protect UserInterfaceOnly... Jaka 03/3/27(木) 14:15 回答
【4579】上は、忘れてください。 Jaka 03/3/27(木) 14:22 発言
【4581】調べて見ました。 Jaka 03/3/27(木) 14:55 回答
【4687】Re:調べて見ました。 日高久雄 03/4/3(木) 9:06 お礼

【4569】ActiveSheet.Protect UserInterfaceOnly:...
質問  日高久雄 E-MAIL  - 03/3/27(木) 10:12 -

引用なし
パスワード
   保護されたシートにVBAで貼り付けたりする場合に
ActiveSheet.Protect UserInterfaceOnly:=True を使いますが エラーが出たり どうもうまく行きません。
この構文は プロシージャのトップに持ってくるのでしょうか、それとも各目的のシートにもって来るべきでしょうか、
保護が解除された後、この構文が来ると 逆に 保護が掛かってしまうのでしょうか、よく解りません。
この構文を使う場合の注意事項があれば 教えていただけないでしょうか?

【4578】Re:ActiveSheet.Protect UserInterfaceOn...
回答  Jaka  - 03/3/27(木) 14:15 -

引用なし
パスワード
   こんにちは。
えっと、
ActiveSheet.Protect UserInterfaceOnly:=True
は、マクロからの内容変更を許可したシート保護をかけるってことです。
そう言うわけで、手入力での保護は掛かります。

【4579】上は、忘れてください。
発言  Jaka  - 03/3/27(木) 14:22 -

引用なし
パスワード
   心配になって試してみたら、全くでたらめの回答でした。
すみません。

【4581】調べて見ました。
回答  Jaka  - 03/3/27(木) 14:55 -

引用なし
パスワード
   ヘルプより
引数 UserInterfaceOnly に True を設定した Protect メソッドをブックのワークシートに適用した場合、保存して閉じた後でもう一度開いたブックに対しては、画面上からもマクロからも変更ができなくなります。マクロからの変更を可能にするためには、引数 UserInterfaceOnly に True を設定した Protect メソッドを再び適用する必要があります。

UserInterfaceOnly  省略可能です。バリアント型 (Variant) の値を指定します。True を指定すると、画面上からの変更は保護されますが、マクロからの変更は保護されません。この引数を省略すると、マクロからも、画面上も変更することができなくなります。

ヘルプが何を言っているのかよく解りませんでしたが、
ActiveSheet.Protect UserInterfaceOnly:=True は、

シート保護が掛かっている場合、
マクロからの変更を許可した保護をかけなおす。

シート保護が掛かっていない場合、
マクロからの変更を許可した保護をかける。

って事みたいです。
因に、マクロからの変更許可は、1回ポッキリみたいです。
次回開いた時は、ただのシート保護になっていると言う事みたいです。

で、位置ですが最初の方に1回書いておけば言いと思います。
また間違ってるかなぁ?

【4687】Re:調べて見ました。
お礼  日高久雄 E-MAIL  - 03/4/3(木) 9:06 -

引用なし
パスワード
   ▼Jaka さん:
有難う御座いました。お礼が遅くなってすみません。いまいち良く理解できないので
色々検証して、又ご相談したいと思いますので宜しくお願い致します。
>ヘルプより
>引数 UserInterfaceOnly に True を設定した Protect メソッドをブックのワークシートに適用した場合、保存して閉じた後でもう一度開いたブックに対しては、画面上からもマクロからも変更ができなくなります。マクロからの変更を可能にするためには、引数 UserInterfaceOnly に True を設定した Protect メソッドを再び適用する必要があります。
>
>UserInterfaceOnly  省略可能です。バリアント型 (Variant) の値を指定します。True を指定すると、画面上からの変更は保護されますが、マクロからの変更は保護されません。この引数を省略すると、マクロからも、画面上も変更することができなくなります。
>
>ヘルプが何を言っているのかよく解りませんでしたが、
>ActiveSheet.Protect UserInterfaceOnly:=True は、
>
>シート保護が掛かっている場合、
>マクロからの変更を許可した保護をかけなおす。
>
>シート保護が掛かっていない場合、
>マクロからの変更を許可した保護をかける。
>
>って事みたいです。
>因に、マクロからの変更許可は、1回ポッキリみたいです。
>次回開いた時は、ただのシート保護になっていると言う事みたいです。
>
>で、位置ですが最初の方に1回書いておけば言いと思います。
>また間違ってるかなぁ?

13596 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free