열 C-K가 업데이트 될 때 날짜와 시간이 자동으로 채워지도록 열 B가 필요한 스프레드 시트가 있습니다. 업데이트 코드를 실행하지 않으려는 K 이상의 열이 있습니다. 이 행의 변경 사항에 대한 업데이트로VBA 범위 업데이트시 날짜 입력 코드
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
i = Target.Row
Dim t As String
t = VBA.Now
Cells(i, 2) = t
End Sub
이 내 상황에 작동하지 않았다 :
는 첫째로 나는 다음과 같은 코드를 사용했다. 이 이점은 사용자가 VBA가 업데이트 된 날짜를 입력하지 못하도록이 셀을 입력 할 수 없다는 것입니다. 그냥 선택한 행에 대한 트리거를 사용하려면, 다음 코드에 갔다 :Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("C6:K43")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
Dim i As Integer
i = Target.Row
Dim t As String
t = VBA.Now
Cells(i, 2) = t
End If
End Sub
이 지금, 그러나, 사용자가 이상 입력 할 수 없습니다 더 이상 작동합니다.
나는 셀 잠금을 시도했지만 VBA는 작동하지 않습니다. 또한 오프셋 수식을 사용하여 시도했지만이 셀의 범위를 하나 이상의 열로 인해 작동하지 않습니다.
내 머리가 찢어지기 전에 어떤 제안이 있습니까 ???
또는 그 코드를 다시 트리거 :
아래 코드를 사용해보십시오. –http://stackoverflow.com/questions/3037400/how-to-lock-the-data-in-a-cell-in-excel-using-vba이 방법이 도움이 될 것으로 생각합니다. –