• 締切済み

ExcelVBA シートの保護について

こんにちは! (わざわざVBAで)ロックされているセルの選択を拒否するシートの保護をかけたいのですが、 Sheet1.Protect Sheet1.EnableSelection = xlUnlockedCells を実行すると、次にシートを開いた時にセルの選択が出来てしまいます ブックを開いた時にもう一度EnableSelectionを設定することで対応していますが、次にシートを開く時に何もしない方法は無いでしょうか?

みんなの回答

  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.1

ブックを開いたときのイベントWorkbook_Openの中に設定しておけばいいのではないでしょうか。(ThisWorkbookオブジェクトの中に作成してください) Sub Workbook_Open() Sheet1.Protect Sheet1.EnableSelection = xlUnlockedCells End Sub

jobvba
質問者

お礼

時間が結構たってしまっているので、締め切りとさせていただきました 申し訳ありませんが、ご理解していただけるようお願いいたします

jobvba
質問者

補足

すいません・・・質問の日本語が少し変でした >(わざわざVBAで)ロックされているセルの選択を拒否するシートの保護をかけたいのですが、 (わざわざVBAで)を読み飛ばしてください やりたいことは、マクロを使わずにシートの保護をした場合、「セルの選択を拒否」が次にブックを開いた時にも有効。なのにマクロを使用した場合は次にブックを開いた時には無効になってしまっている。 これを回避出来る方法はないでしょうか? 回答していただいた方法でも回避は出来るのですが、できればシートの保護をかけた瞬間から有効になるような方法があればいいなと思っています

関連するQ&A