如何触发隐形控件的单击事件?

时间:2014-02-04 22:27:51

标签: vba controls mouseclick-event invisible

我的VBA项目背景包含图片。这些图片我想点击,就像点击触发点击事件一样。我已经尝试添加图片框,按钮和标签,但是如果不使click事件不起作用我就无法使它们隐藏(将Visible属性设置为false会导致这种情况)。谷歌搜索问题,大多数解决方案通过更改颜色和bordertyle使按钮看起来透明,因此控件似乎是单色背景的一部分。然而,我想要在按钮下面看到一张特定的图片。

1 个答案:

答案 0 :(得分:1)

手动添加宏

  1. 右键单击要为其指定宏的图片。 enter image description here
  2. 从选项中选择Assign Macro
  3. 指定单击图片时要运行的宏。 enter image description here
  4. 点击OK完成。

    以编程方式添加宏

    如果宏位于同一工作簿中:

     ActiveSheet.Shapes("Picture 1").OnAction = "ThisWorkbook.test"
    

    如果宏位于不同的工作簿中:

     ActiveSheet.Shapes("Picture 1").OnAction = "'Book1'!test"
    

    有关更多示例,请查看thisthis