我有一个电子表格,其中提供了怪异的零件编号。当我意识到有人可能不小心更改了先前的条目并破坏了整个过程时,它基本上就完成了!数据库在我眼中,但是现在Excel必须做。
当日期L列中有某行时,我想从A-K列锁定X行。我目前正在使用Application.Intersect Target
来确保没有人试图保留空白行或不完整的描述,但是似乎无法获得锁定。
Current Sub看起来像这样:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
Dim isect As Range
On Error Resume Next
Set isect = Application.Intersect(Target, Range("E3:E9999"))
If Not (isect Is Nothing) Then
If Target.Column = 1 Then
If Len(Target.Value) > 0 And Len(Target.Offset(-1, 2).Value) = 0 Then
' Check if a row is skipped on Initials
MsgBox "You cannot skip a row", vbInformation
Target.ClearContents
End If
Else
If (Len(Target.Value) > 0 And Len(Target.Offset(-1, 0).Value) = 0) Or (Len(Target.Value) > 0 And Len(Target.Offset(-1, 2).Value) = 0) Then
' Check if previous part description is blank
MsgBox "You cannot skip a row, or leave an incomplete part", vbInformation
Target.ClearContents
End If
End If
End If
End Sub
答案 0 :(得分:0)
我是个白痴。我通过简单的数据验证If(Next Cell = "",Named-List,FALSE)
解决了这一问题,该方法可以在创建零件后禁用下拉调整。