如何在 VBA 中单击更改形状颜色?

问题描述

我希望在单击它时在 excel 中更改形状的颜色。 但我是 VBA 新手,不知道如何为此编写代码。 任何方法将不胜感激。谢谢

尼古拉斯

解决方法

你看起来很新,不知道社区规则......我现在会尝试帮助你(仅),但请记住你必须知道how to ask

  1. 将此代码复制到标准模块中:
Sub MyShape_Click()
  Dim sh As Shape
   Set sh = ActiveSheet.Shapes(Application.Caller)
   If sh.Fill.ForeColor.RGB = RGB(255,0) Then
        sh.Fill.ForeColor.RGB = RGB(0,255)
   Else
        sh.Fill.ForeColor.RGB = RGB(255,0)
  End If
End Sub
  1. 右键单击讨论中的形状并选择 Assign Macro...。在打开的窗口中,您应该搜索并选择上面的子宏名称 (MyShape_Click)。按 OK 并测试解决方案。它首先将形状着色为红色,然后交替着色为蓝色和红色。