【发布时间】:2017-03-14 19:27:01
【问题描述】:
一旦我通过“输入/单击”按钮从 User_Form 输入数据后,有没有一种方法可以自动执行日期或时间?我已经尝试过这段代码,但它一直在重新启动我的 Excel 工作簿。最重要的是,我在Private Sub Worksheet_Change(ByVal Target As Range) 中有大量其他代码
它可能超载吗?
所以我在想如果我可以用我的 Userform_click() 来编写代码会更好吗?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
For i = 16 To 100
If Cells(i, 3).Value <> "" Then
Cells(i, 1).Value = Date & " "
Cells(i, 1).NumberFormat = "mm/dd/yy"
End If
Next
End Sub
【问题讨论】:
-
你的处理程序是递归的,没有出路。每次单元格更改时,处理程序都会运行,并且它会更改单元格,然后再次运行处理程序,然后更改单元格,然后再次运行处理程序,这最终会炸毁调用堆栈并将所有内容都付之一炬。