我正在尝试创建一个列作为每行的唯一键值,通过在最后一列输入数据时添加Now()值。我创建了一个子,它检查要选择的单元格的范围,并在其中有一个值,如果是,则将Now()值添加到另一列,作为该行的唯一标识符。这是我到目前为止的代码:
Private Sub Worksheet_SelectionChange(ByVal Target As range)
'Check to see if the click/selected cell is in column H
If Not Intersect(Target, range("H:H")) Is Nothing Then
'Make sure just one cell is selected and it isnt empty
If Target.Cells.Value <> "" And Target.Row > 7 And Target.Row <= 20 Then
'Update the "KeyA" value
range("A" & Target.Row).Value = Now()
End If
End If
End Sub
不幸的是,如果所选单元格中已有值,则只将Now()值添加到键列中,因此如果单击空单元格然后添加该值,则不会将Now()添加到键列。一旦将条目添加到所选单元格而不必在向其添加值后重新选择单元格,如何使sub添加Now()值?
答案 0 :(得分:1)
使用Worksheet_Change
事件代替Worksheet_SelectionChange
。
Change
,而当您选择不同的单元格时会激活SelectionChange
。