gpt4 book ai didi

excel - 使用来自下拉菜单的动态日期创建 Excel 图表

转载 作者:行者123 更新时间:2023-12-04 21:14:35 25 4
gpt4 key购买 nike

我正在尝试创建一个折线图,我可以在其中使用下拉菜单来选择开始和结束日期(并且看到的数据将动态变化以反射(reflect)这些日期)。目前,我的数据如下所示:

 Date    (Total Funding Before) (Total Funding During) (Total Funding After)
8/2017 150 160 150
9/2017 160 160 160
10/2017 170 170 150
11/2017 180 180 170
12/2017 190 180 160

谁能告诉我如何创建这个?

最佳答案

是的,这是可能的:D。

有了一些动态范围和很大的耐心,您可以创建如下结果:

enter image description here

分步指南:

首先我们将整个表格制作成“Excel表格”。转到“主页”->“格式为表格”。

enter image description here

下一部分,我们需要创建几个“命名范围”。转到:“公式”->“名称管理器”->“新建...”

enter image description here

我们将开始日期设为“命名范围”。我将其命名为“Start_Date”。它指的是单元格$B$3 .我的工作表名称是“Sheet1”。

我们对“End_Date”执行完全相同的操作。我们将其引用到下面的单元格 $B$4。

enter image description here

然后我们为“日期”列创建一个名称范围。我们将范围命名为“Dates”。检查“引用:”的格式是否为“= TableX[Column Name]”。在我们的案例中 =Table1[Date] .请注意,名称管理器不使用“B7:B16”,而是对表格列区域的引用。 最后一步非常重要! ,因为我们想让所有引用动态化。

enter image description here

是时候为开始和结束日期创建下拉列表了。

转到:“数据”->“数据验证”-> 选择:“列表”->“来源:”=Dates ,这是我们在上一步中命名的范围。

enter image description here

是时候为 X 轴创建动态范围了。我将其命名为“XAxis

=OFFSET(Sheet1!$B$7,MATCH(Start_Date,Dates,0)-1,0, MATCH(End_Date,Dates,0)- MATCH(Start_Date,Dates,0)+1,1)

此公式将搜索第一行的第一个日期 ( Start_Date)。然后它将查看结束日期的位置 ( End_Date)。这两者一起将创造我们需要的范围。我有“ ;”作为分隔符,而美国有“ ,”。

enter image description here

现在我们创建我们需要的所有 Y 范围。我们要绘制的每个系列都有一个。

我们从“之前的总资金”列开始。我把它命名为: YTotalFundingBefore并应用以下公式。
=OFFSET(XAxis,0,1)

所以我们使用与 XAxis 相同的范围并将其向右偏移一列。

enter image description here

我们对以下两个系列做同样的事情。

请注意,对于我们创建名称范围的每个新系列,我们都会更改列偏移量。所以我命名为“ YTotalFundingAfter”的最后一个系列,公式几乎相同,除了 3 .
=OFFSET(XAxis,0,3)

enter image description here

是时候将这些范围应用于图表了。我选择整个表格并创建一个折线图。然后我选择第一个图表系列:“Total Funding Before”。在公式栏中(图中标记为黄色),我需要更改我的引用。

enter image description here

在这里,我想提供一个技巧来节省一些时间。

当我重写公式时,我会这样开始......因为命名范围会自动出现(如图所示):
=SERIES(Sheet1!$C$6,Xaxis,YTotalFundingBefore,1)

enter image description here

然后我在所有变量前面添加工作表名称。在我的情况下,“Sheet1”。完整的公式将是:
=SERIES(Sheet1!$C$6,Sheet1!Xaxis,Sheet1!YTotalFundingBefore,1)
=SERIES(HeaderCell , XAxis Range , Y-Axis Range , Serie Number)

然后我们按回车。

enter image description here

其他系列也一样,所以第二个将是:
=SERIES(Sheet1!$D$6,Sheet1!Xaxis,Sheet1!YTotalFundingDuring,2)

enter image description here

最后一个系列也是如此。请注意,我更改了标题单元格 ($E$6)和序列号( 3):
=SERIES(Sheet1!$E$6,Sheet1!Xaxis,Sheet1!YTotalFundingAfter,3)

enter image description here

最后,我们有一个基于我们的开始和结束日期值的动态图。

表的好处是当添加新行(日期)时,范围将自动选择它们以及下拉列表。在下图中,我添加了 2 行用于演示目的。

enter image description here

这种设置有一个重要的缺点。当用户应用日期范围 (2017-08) 中的整个第一个日期时和 日期范围 2018-07 中的最后一个日期,图表系列将删除名称范围并转到绝对值,如下所示:( =SERIES(Sheet1!$E$6,Sheet1!$B$7:$B$18,Sheet1!$C$7:$C$18,1) )。我的解决方案是在日期范围的开头有一个或两个额外的日期。我们可能永远不会使用的日期,因此永远不会使用完整的日期范围。

关于excel - 使用来自下拉菜单的动态日期创建 Excel 图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53107523/

25 4 0