VBA Excelでシートを保護する場合、UserInterFaceOnly:= Trueオプションを使用します。ファイルを閉じて再度開くと、UserInterFaceOnlyモードはアクティブではなく、パスワード保護のみです。VBA Excel:シート保護:UserInterFaceOnlyがなくなった
コード:ActiveSheet.Protect Password:="myPassword", UserInterfaceOnly:=True
なぜ?
VBA Excelでシートを保護する場合、UserInterFaceOnly:= Trueオプションを使用します。ファイルを閉じて再度開くと、UserInterFaceOnlyモードはアクティブではなく、パスワード保護のみです。VBA Excel:シート保護:UserInterFaceOnlyがなくなった
コード:ActiveSheet.Protect Password:="myPassword", UserInterfaceOnly:=True
なぜ?
私はその問題の原因が何であるかわからないんだけど、あなたはWorkbook_Open()
イベントに保護コードを追加することによって、それを回避することができ、あなたがそれを行うことはできません各
Excelファイルには15枚あり、毎回の保護には10秒かかります。私はすでにこれを実験しています。 – Pwi
@Pwi 15枚で10秒???あなたがしていることすべてがトグル・プロテクションであるなら、それがどれほど長くかかるかはわかりません。私は自分でテストしましたが、それは本質的に瞬間的でした。それを遅くしている何か他のことはありますか? – RGA
完全に空のブックを試しました。 'コード::= "PASSW"、UserInterFaceOnly:各のShのワークシート Sh.Protectパスワードの このコードを試してみてください= Trueの 次のSH /code' – Pwi
でUserInterfaceOnly:=True
を持っているすべてのシートの保護をリセットブックを再度開いた後に再度適用せずにUserInterfaceOnly:=True
。 ExcelのVbをprotectメソッド参照から撮影:
あなたがtrueに設定UserInterfaceOnly引数で、この方法を適用し、ブックを保存した場合ブックを再度開いたときに、ワークシート全体(だけではなく、インターフェイスが)完全に保護されます。ワークブックが開かれた後、再度有効にユーザーインターフェースを保護するには、再度UserInterfaceOnlyで、この方法を適用する必要があり、あなたの懸念は(あなたが言うように、15秒)、これは時間がかかりすぎるということであれば、今、真
に設定、thisコードレビュー答えを見てください。さまざまなレベルの複雑なワークブックでこれを行いましたが、保護を再適用する時間は、2010年を含めて、私が試したすべてのバージョンではごくわずかです。
これはまさにそれです。あなたは 'Open'イベントでそれをリセットする必要があります。 – Rory