第1个回答 2024-05-10
如何在Excel中创建动态图表图例将条件格式与图表结合使用时,可以创建与图表中线条的相对位置匹配的详细图表图例。当我在《华尔街日报》上看到带有这样的图例的图表时,我知道我必须在“ 滑动文件”中添加类似的图表 …但是在Excel中,我们需要动态的图例!什么是动态图表图例?动态图表图例随着您的数据更改而更改。例如,此图例会自动调整,以使有关顶行的信息也位于图例栏的顶部,而有关底行的信息也位于栏的底部,依此类推。此外,此图例包括每个数据系列的当前值。当然,您可以添加任何其他数据。由于此图表显示的是随机数据,因此每次重新计算工作簿时,图例都会自动调整。关键:条件格式我可以想到两种方法来建立这样的图例。一种方法是使用Camera对象。如果不是一个问题,我可能会使用这种方法。问题是使用多个Camera对象会大大降低计算时间。因此,将Camera对象的使用限制为仅在确实需要时才是一个好主意。另一种方法是使用条件格式。该方法计算迅速,并产生了很好的结果。
这两个图表显示了相同随机数据的不同版本。请注意,随着图表系列顺序的更改,图例会自动适应。入门数据没有什么特别的。它只是一个显示屏,显示五个不同类别的13个月。当然,这里的类别是产品线:
第4行显示了我使用的两个范围名称。也就是说,我命名了产品范围Product,以及当前值Current的范围。该图表在单独的工作表上:
要创建图表,让我们从控制区域开始。
设置图例控件我在下面讨论关键值和公式。除非我另有说明,否则根据需要将最后一个公式复制到其列的下方。L3:1L列仅包含数字1到5。
M3:= INDEX(当前,$ L3)+ ROW()* 0.0001M列从数据工作表中返回当月的数据……另加一个。我们将使用RANK函数将这些结果从1到5进行排名。但是,只要RANK函数对重复的值进行排名,它就会返回重复的结果。为了确保没有两个值重复,我们向排名的每个值添加唯一但无关紧要的值。(这里,我们将行号乘以.0001。)N3:= RANK(M3,$ M $ 3:$ M $ 7)N列中的公式对M列中的结果进行排名。O3:1O4:= O3O5:= O3 + 1列O返回1,1,2,2,依此类推。根据需要将单元格O5复制到该列下方以生成这些值。
P3:= MATCH(O3,$ N $ 3:$ N $ 7,0)P列中的公式会自动对结果进行排序。单元格P3返回行号最高的结果。单元格P4返回排名第二的结果的行号,依此类推。最后,您可以设置返回标签和值的公式:
I3:= INDEX(Product,$ P3)I4:= INDEX(Current,$ P4)根据需要将这对公式复制到该列的下方。现在已经有了公式和值,我们可以设置条件格式了。
设置条件格式选择范围H3至H12。然后,在新Excel(Excel 2007或更高版本)中激活单元格H3的情况下,选择“主页”,“样式”,“条件格式”,“新规则”,“使用公式确定要格式化的单元格”。输入此处显示的公式:
然后选择“格式”按钮,然后为“系列1”行选择所需的主题颜色。再重复此过程四次,以使五个公式如下所示:= $ P3 = 1= $ P3 = 2= $ P3 = 3= $ P3 = 4= $ P3 = 5对于每个值,请选择不同的主题颜色。完成后,电子表格应显示十个单元格,并具有五种填充颜色,如上图所示。要在视觉上划分每组彩色单元格,请在每组两个单元格周围分配中等厚度的白色边框。
完成您的报告使用标准的制图技术,创建折线图。选择SERIES 1并将线的颜色更改为您分配给第一种条件格式的颜色。将SERIES 2线条颜色更改为第二种颜色,依此类推。然后,根据需要设置图表区域的格式。