今天早上,微信群有人咨询
选中单元格后,双击不再编辑,而是复制,能不能用vba做到?
这个是可以的。
在excel中,如果直接双击单元格,会进入单元格的编辑状态,然后可以开始输入内容或者修改单元格的内容。
如果要双击单元格后不进入单元格的编辑状态,做其它事情,可以通过工作表的Worksheet_BeforeDoubleClick
事件捕获鼠标双击,让其不执行对应的操作,改为执行其它操作。
这个事件将在鼠标双击后被触发。
比如要双击时复制excel单元格内容而不进入单元格编辑状态,可以使用如下的代码:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Target.Copy '将Cancel参数设置为True,则之前默认的双击动作不会产生,也就是不会进入单元格编辑状态 Cancel = True End Sub
其中Cancel 参数的意思是如果设置为True,则表示之前默认的鼠标双击操作后的动作不会执行,比如双击单元格会进入单元格的编辑状态,如果设置了True,则不会进入单元格的编辑状态。
通过这样的思路,可以让双击鼠标干其它很多事情,比如弹出一个对话框,或者执行一段其它程序等等。
发表评论