【问题标题】:Color Chart Columns by Cell Color Error按单元格颜色错误的颜色图表列
【发布时间】:2018-04-24 03:21:46
【问题描述】:

我正在尝试使用特定工作表上活动单元格中的单元格颜色创建图表。使用下面提供的宏时,我发现只有一些分配的单元格 RGB 颜色代码与图表匹配。我不知道为什么有些颜色会匹配而有些不匹配。当我手动输入颜色代码时,图表中会显示正确的颜色。我是否在此宏中遗漏了什么或需要采取的额外步骤?

我在这个项目中使用 Excel 2016。

Sub ColorChartColumnsbyCellColor()
With Sheets("Sheet1").ChartObjects(1).Chart.SeriesCollection(1)
Set vAddress = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1))
For i = 1 To vAddress.Cells.Count
.Points(i).Format.Fill.ForeColor.RGB = 
ThisWorkbook.Colors(vAddress.Cells(i).Interior.ColorIndex)
Next i
End With
End Sub

【问题讨论】:

  • 你的问题来自Set vAddress = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1)) 这一行。不幸的是,我不知道你想用那个嵌套拆分做什么,所以我不知道如何帮助你。尝试Assert该行,看看你是否得到了预期的结果。
  • 如果您尝试从工作表中获取的任何颜色来自条件格式,那么您需要查看DisplayFormat.Interior.Color 这些颜色不会反映在Cells(i).Interior.ColorIndex 中 - 那将返回未应用任何 CF 更改的单元格的“基本/静止”颜色

标签: vba excel charts colors


【解决方案1】:

您正在为 RGB 属性分配颜色索引。颜色索引与红绿蓝无关。此外,@Tim William 有一个观点:条件格式可能会在您所做的事情中发挥作用。

试试这个代码,它将 Color 属性分配给 RGB 属性:

Sub ColorChartColumnsbyCellColor()
    With Sheets("Sheet1").ChartObjects(1).Chart.SeriesCollection(1)
        Set vAddress = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1))

        For i = 1 To vAddress.Cells.Count
            'Comment the line below and uncomment the next one to take conditional formatting into account.
            .Points(i).Format.Fill.ForeColor.RGB = vAddress.Cells(i).Interior.Color
            '.Points(i).Format.Fill.ForeColor.RGB = vAddress.Cells(i).DisplayFormat.Interior.Color
        Next i
    End With
End Sub

【讨论】:

  • 在 For 循环中 .Points(i).Interior.Color = vaddress.Cells(i).Interior.Color 不应该足够吗?
  • 虽然它可以编译和工作,但 Intellisense 不会为 Point 类选择 .Interior。我认为它已被弃用。
  • 我实际上对thisworkbook.colors() 部分感到更困扰——那是在做什么?对我来说,似乎里面的论点就足够了。
  • 天哪,哈哈!更新代码...谢谢哈哈哈...现在欠一些代表点。
  • 您可以使用.Points(i).Interior.Color,但要让 IntelliSense 看到它,您可能需要在对象浏览器中显示隐藏成员。
猜你喜欢
  • 1970-01-01
  • 2019-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-06
  • 1970-01-01
  • 2017-08-23
  • 1970-01-01
相关资源
最近更新 更多