Excel - 如何创建条形图以仅显示条件格式的色标

问题描述 投票:0回答:1

我不确定这在 Excel 中是否可行,但我正在尝试创建管道调查数据的热图作为仅显示瞬态颜色的条形图。

我有一个位置和电流密度值列表,我已将其有条件地格式化为色标,但是我不知道如何将其复制为图表(忽略实际数据值,而只是将颜色显示为块)。请看下图。

enter image description here

我已尝试在 Excel 中使用尽可能多的函数,但尚未找到解决方案。我只能将热图显示为电子表格而不是条形图。数据可以覆盖 1000 行,因此我希望将其显示为图表,作为显示密度的一种视觉表示形式。

任何帮助将不胜感激, 谢谢 拉塞尔

excel vba charts heatmap
1个回答
0
投票
Option Explicit

Sub HeadMapColumnChart()
    Dim srcRng As Range, i As Long, oSerCol As Series
    Set srcRng = Range("C1").CurrentRegion
    Columns("C").Insert
    With srcRng.Columns("C")
        .Value = "1"
        .Cells(1).Value = .Cells(1).Offset(,-1).Value 
    End With
    ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
    With ActiveChart
        .SetSourceData Source:=srcRng.Columns("C")
        .Axes(xlValue).MaximumScale = 1
        .ChartGroups(1).GapWidth = 0
        .SetElement (msoElementPrimaryValueAxisNone)
        .HasAxis(xlCategory) = True
        Set oSerCol = .FullSeriesCollection(1)
        With srcRng.Columns(1)
            oSerCol.XValues = "=" & ActiveSheet.Name & "!" & .Resize(.Rows.Count - 1).Offset(1).Address
        End With
        For i = 2 To srcRng.Rows.Count
            oSerCol.Points(i - 1).Format.Fill.ForeColor.RGB = Cells(i, "B").DisplayFormat.Interior.Color
        Next
    End With
End Sub

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.