1

我有两个工作日的日期,first_date并且second_date.

我有一个工作日期递减的数据表:

second_date        value 1    
second_date - 1    value 2    
second_date - 2    value 3    
   ....             ....    
first_date         value n    
first_date -1      value n + 1    
   ....             ....

第一次约会后桌子不会停止。

我想绘制 first_date 和 second_date 之间的值。我找到了一种动态选择 X/Y 值的方法:Excel variables X values

但是,现在我遇到了另一个问题,当我选择超出数据表范围的日期时,它不会绘制我所要求的内容(这是正常的)。我想根据我的日期更新我的数据表。

我的数据表中的日期是简单构建的:=second_date在第一行 ( D4) 中,=+WORKDAY(D4,-1)在第二行中,我使用单击和拖动工具递归地构建其他行。

有没有办法在没有 VBA 的情况下阻止这种递归到我的第一次约会?您将如何仅使用公式构建这样的表格?

4

1 回答 1

0

在不使用 VBA 的情况下,我认为动态生成数据的唯一方法是在两个日期之间设置的时间范围内有条件地生成数据。正如您所说,您只需要大约 3 个月的数据,那么额外的“空”单元格不会显着影响性能。

具体而言,将您的公式从 D5 更改为以下(假设 D4=second_date):

=IF(IFERROR(WORKDAY(D4,-1)>=first_date,FALSE),WORKDAY(D4,-1),#N/A)

使用类似的条件逻辑在第二列中生成您的值。您要确保如果不满足日期条件,它会输出 #N/A 值。这在生成图表时很重要(更多内容见下文)。

您可以像通常一样最初生成图表,包括表格的最大尺寸(最多 3 个月:~60 个工作日)。当您更改日期时,它将在您的范围之外的日期包含#N/A 运算符。该图表将忽略这些数据集,并调整比例,从而有效地创建一个仅包含用户想要的日期范围的图表。

如果包含#N/A 是一个问题,还有一些其他选择。您可以创建条件格式,使#N/A 的字体为白色,以获得美观​​的分辨率。或者您可以将图表配置为忽略空单元格并在上面的公式“”中替换#N/A,达到相同的结果。

希望这可以帮助。请让我知道是否需要进一步澄清或这不符合您的特定需求。干杯

于 2015-01-21T23:13:11.340 回答