0

我有两个工作日日期,first_date,second_date。

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

第二个日期值 1

第二个日期 - 1 值 2

第二个日期 - 2 值 3

…………

第一个日期值 n

第一个日期 -1 值 n + 1

……

(数据表不会在第一次约会时停止)。

我想绘制第一个和第二个日期之间的所有值,仅适用于工作日。

我找到了一些使用宏的方法,但我希望它是自动化的。

用 =NETWORKDAYS(firstdate,seconddate) 计算行数很容易,但我无法将这个函数输入到系列 X/Y 值中。

我有类似 ='sheet1!$D$4:$D$33 的东西。

我想要 ='Sheet1'!$D$4:$D$ & NETWORKDAYS(firstdate,seconddate)

有人知道怎么打吗?

我很想把 NETWORKDAYS(firstdate,seconddate) 放在一个单元格中,并在公式中使用 cell.value。它是如何工作的?

4

1 回答 1

1

您可以使用该OFFSET函数来定义动态命名范围。然后可以在系列公式中使用此名称。

在我的示例中,我分别在单元格 D1 和 E1 中有 start_date 和 end_date(如果没有,请根据需要修改公式)。

第 1 步打开名称管理器,添加一个新名称,如“Workdays_Data”,并在“引用到:”框中输入公式:

=(OFFSET(Sheet1!$D$4,0,1,NETWORKDAYS(Sheet1!$D$1,Sheet1!$E$1),1))

名称管理器对话框

然后关闭名称管理器对话框。

步骤 2选择数据系列,并在公式栏中,将引用值的范围替换为新名称,Workdays_Data。您需要修改的部分突出显示:

修改前的编辑栏截图

进行更改后,公式栏应如下所示:

修改后的公式栏以使用命名范围

如果您这样做,那么图表应该会在您更改结束日期时更新

通过对名称定义进行一些额外的调整,您可以对其进行修改以考虑动态开始日期。例如,您可以将 Name 公式中的“0”替换为 Match 函数,以便 name 公式显示为:

=(OFFSET(Sheet8!$D$4,MATCH(Sheet8!$D$1,Sheet8!$D$4:$D$11,FALSE)-1,1,NETWORKDAYS(Sheet8!$D$1,Sheet8!$E$1),1))

然后,您可以创建另一个名称Weekdays_XValues并将其用于图表中的类别标签,以便这些标签也更新:

=(OFFSET(Sheet8!$D$4,MATCH(Sheet8!$D$1,Sheet8!$D$4:$D$11,FALSE)-1,0,NETWORKDAYS(Sheet8!$D$1,Sheet8!$E$1),1))

最终结果应该是基于所选开始/结束日期的完全动态图表,例如:

使用值和 XValue 的动态命名范围的 Excel 图表

于 2013-04-16T21:07:53.993 回答