首页 > 解决方案 > Excel - 如何根据另一个单元格的颜色更改形状颜色

问题描述

我正在尝试根据另一个选项卡上的表格更改多个形状的颜色。该表包含部分、象限、形状名称和值(具有特定颜色的单元格。)我试图通过使用形状名称和颜色单元格所在的范围将形状与颜色联系起来,但我得到了一个未定义的子/函数. 表中值的颜色基于条件格式。

Sub Update()

Dim CellColor As Long
Dim ShapeColor As Variant

    CellColor = Worksheets("Sheet1").Range("D2").DisplayFormat.Interior.Color
    ShapeColor = Worksheets("Sheet1").Range("C2").Value
    Worksheets("main").Shapes(ShapeColor).Fill.ForeColor.RGB = CellColor

    Worksheets("main").Select
End Sub

在此处输入图像描述

在此处输入图像描述

标签: excelvbacolorsshapesexcel-2016

解决方案


将我的评论移至答案:

  • Set不应该在这里使用。Worksheet("main")缺少一个 s - Worksheets
  • 如果是条件格式,那么您需要使用Worksheets("Sheet1").Range("D2").DisplayFormat.Interior.Color.

推荐阅读