私は、パスのない保護されたシート、セルD6がロックされています。そのセルのVBAコードは実行されません。保護シート、セルロック、VBAコードを受け付けません
私はここにいくつかの記事を読んでいます。これは同様の問題の解決策となりました。どのように使用するか、どこに置くかはわかりません。私はそれにパスワードを持っていないと述べたように。
Worksheets("Loading").Protect Password:=****, UserInterfaceOnly:=True
Private Sub Worksheet_Change(ByVal Target As range)
Application.EnableEvents = False '<--| disable events handling
On Error GoTo ErrorHandler '<--| be sure to catch any error and enable events handling back
Select Case Target.Address
Case "$D$4"
'Recalculate Downpayment D5 if Purchase Price is changed
range("D5").Value = (range("D4").Value * range("B5").Value)/100
Debug.Print "New value for D5 Downpayment "; range("D5").Value
range("D6").Value = (range("D4").Value - range("D5").Value) ' This cell won't activate when locked and sheet protected
Debug.Print "D6 New Mortgage " & range("D6").Value
あなたのシートが保護されている場合(ここにパスワードがあるかどうかにかかわらず)、セルがロックされている場合、VBAで 'UserInterfaceOnly'引数を使用して保護しない限り、コードを変更する前に保護を解除する必要があります。 –
私は自分が望むものを正しく説明しているかわかりません。ユーザーが何かを入力しなければならないフィールドではないので、フィールドD6をロックします。私のVBAコードは、他のセルのエントリからそれを埋めます。問題は、ページを保護してからユーザーに与えると、計算がD6に自動集計されないということです。それは$ 0のままです。私はなぜ実際にシートを保護すべきかわからない。ありがとう。 – geddeca