我有一个VBA宏,每次在A列(Workbook_SheetChange)的单元格中输入一个值时,该宏就会启动。
某些用户将多个单元格或整行或整行的多行粘贴到工作表中,以使他们更轻松(CTRL-V)。
如果粘贴了整个行,则宏将失败,有时整个VBA_engine会损坏,用户需要重新启动Excel。
我想按CTRL-V之后但在将内容粘贴到单元格之前禁用VBA代码的方式来处理粘贴(CTRL-V)。然后,将启动VBA代码。
我该怎么做?
答案 0 :(得分:1)
问题在于编写Worksheet_Change
事件的人没有使其处理多个单元格中的更改。无论何时选择多个单元格,都可以重写它或确保退出事件:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
'rest of the code here
End Sub