Excel:在单元格上运行macros单击
我正在使用下面的代码插入今天的date到单元格中,当用户单击到该行中的另一个单元格时。
目前代码是这样设置的; 如果用户单击单元格AQ8,然后将date插入单元格AS8。
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) If Target.Address = "$AQ$8" Then Range("AS8").Value = DATE End If End Sub
但是,现在我想稍微改变这个代码,以便当用户更改任何行中的任何AQ单元格时,随后的AS单元格将该date插入该行的相应单元格中。 所以,如果单元格AQ9被点击,然后AS9显示今天的date,当他们点击AQ10,然后AS10显示今天的date等等。 这将被写为目标行function? 如果是的话,我会如何写这样的东西? 有人可以告诉我怎么能得到这个做我所需要的,在此先感谢
如果你不想通过数字来引用列,即你想使用“AQ”而不是43,那么下面的工作应该是:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = Range("AQ1").Column Then Range("AS" & Target.Row).Value = Date End If End Sub
AQ1
对第1行的引用是虚拟的,因为代码只是select该范围的.Column
。
我正在使用Worksheet_Change
因为您说过“当用户更改任何AQ单元格” 。 如果您只希望在用户单击单元格时发生这种情况,则可以继续使用Worksheet_SelectionChange
事件。
更新如下:
If Target.Column = 43 Then Range("AS" & Target.Row).Value = Date End If
AQ = 43列中的每一行都会更新date。