如何在excel中检测粘贴事件

Ami*_*mit 7 excel vba excel-vba

我需要检测excel的paste命令.有什么工作可以告诉我们,当用户点击左侧mosue按钮点击弹出的菜单上的粘贴时.如果用户单击粘贴菜单项,则需要我执行该过程.任何帮助,将不胜感激.

此致,阿米特

Kyl*_*Mit 16

借用Excel VBA如何检测是否在工作表中粘贴了某些内容.该Workbook_SheetChange事件将触发页面上的任何更改事件,包括粘贴.

在此事件中,您可以通过查看撤消列表历史记录中的最新条目来检查上次更改是否为粘贴:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  Dim lastAction As String

  ' Get the last action performed by user
  lastAction = Application.CommandBars("Standard").Controls("&Undo").List(1)

  ' Check if the last action was a paste
  If Left(lastAction, 5) = "Paste" Then

    ' Do Stuff Here

  End If
End Sub
Run Code Online (Sandbox Code Playgroud)