B18のドロップダウンで特定のオプション( "T")を選択すると、セルB20をロックして "1"を書き込みます。私が他のオプションを選択した場合、何の制限もなく普通にそれを埋めることができるようにしたい。ここで私が試した最良のコードは次のとおりです。Excelシート:セルをロックし、ドロップダウンオプションに基づいて "1"を書き込みます。
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
Set ws = ActiveSheet
If Target.Address = "$B$18" Then
ws.Unprotect
Application.EnableEvents = False
Target.Offset(1).Locked = Target.Value = "T"
If Target.Value = "T" Then
Target.Offset(1).Value = 1
Else
If Target.Offset(1).Value = 1 Then Target.Offset.Value = ""
End If
Application.EnableEvents = True
ws.Protect
End If
End Sub
このコードは、私がしたい正確に何やっているが、その代わりに、B20のセルB19でこれを実行します。
誰かが私を助けてくれますか?
'Target.Address =" $ B18 $ 1 "とは何ですか?また、どのセルに「1」を設定したいのですが、どの基準に基づいていますか? – Ralph
間違いは、すでにそれを修正しました。 B18が「T」の場合、B20は「1」になり、ロックされます。 –