前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VBA技巧:让代码识别工作表中的形状

VBA技巧:让代码识别工作表中的形状

作者头像
fanjy
发布2024-05-14 10:38:02
870
发布2024-05-14 10:38:02
举报
文章被收录于专栏:完美Excel完美Excel

标签:VBA

Q:我在工作表中放置有一些形状,例如圆形、矩形等,我想当我在工作表中使用鼠标单击这些形状时能够根据单击的形状有不同的操作,该如何实现?我想在一个过程中实现,而不是每个形状关联不同的过程。

如下图1所示,当我使用鼠标单击上方的圆形时,会执行一个操作;单击下方的矩形时,会执行另一个操作,但这两个形状都关联相同的过程。

图1

A:在示例工作表中,将上方的圆形命名为“椭圆示例”,下方的矩形命名为“圆角矩形”。按Alt+F11键,打开VBE编辑器,插入一个标准模块,在其中输入代码:

代码语言:javascript
复制
Sub testShape()
 If Application.Caller = "椭圆示例" Then
   MsgBox "你单击了椭圆."
 ElseIf Application.Caller = "圆角矩形" Then
   MsgBox "你单击了圆角矩形."
 Else
   MsgBox "没有单击到任何形状."
 End If
End Sub

然后,返回工作表,在形状中单击鼠标右键,将其关联到宏过程testShape。当你单击工作表中的形状时,结果如下图2所示。

图2

你可以代替过程中MsgBox行的代码为你想要执行的操作代码。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档