2016-12-23 99 views
2

我有一个数据透视表,我可以根据月份过滤器(更改表格的数据)在不同月份循环。我试图根据这种价值变化来计算。我记录了一个工作日内使用许可证的次数。一个月中的工作日数根据月份而变化。我使用基于Excel中的数组计算

=NETWORKDAYS(H34,EOMONTH(H34,0),J34:J45) 

H34引用我1/1/2016日起计算出每个月的工作日。 J34:J45引用我的假日日期以避免。

我试图写一个公式,说:“如果月月列表中列出(从我一个月过滤器),然后打印对应的工作日值。

=IF(G34:G46=H48, I34:I46) 

它仅适用于月。该值的其余部分返回False。我计算它用作数组函数,它返回要么假,我不认为它可以代替它的另一个功能。任何帮助,将不胜感激。

2016    
    Month Date Workdays Holiday Dates Holidays 
    January 1/1/2016 19  1/1/2016 New Year's day 
    February 2/1/2016 20  18-Jan  Holiday 2 
    March  3/1/2016 22  2/15/2016 Valentines day 
    April  4/1/2016 21  3/25/2016 St. Patrick's Day 
    May  5/1/2016 21  5/30/2016 Memorial Day 
    June  6/1/2016 22  7/4/2016 Independence Day 
    July  7/1/2016 21  9/5/2016 Labor Day 
    August 8/1/2016 23  10/10/2016 Holiday 
September 9/1/2016 22  11/8/2016 Columbus Day 
October 10/1/2016 21  11/11/2016 Veteran's Day 
November 11/1/2016 21  11/24/2016 Thanksgiving 
December 12/1/2016 21  12/26/2016 Christmas 
    All    235  

    Selected Month    
    March FALSE  

回答

2

VLOOKUP()函数将为您大大简化这个过程。这个特殊的功能非常适合基于密钥查找字段提取列表中的值。

在您的示例中,您想根据输入月份轻松从假日期列中提取值。

enter image description here

有几件事情要记住在这个功能的输入参数功能:

  • 您的表必须包含查找值,在这种情况下,在第一栏,月柱。
  • 如果可能需要锁定阵列尺寸,请使用列号和行号前面的$符号。
  • 应该为range_lookup选择FALSE,以便对查找值进行精确匹配。如果您选择错误,您可能会得到错误的积极性。
  • 列表中的每一行对于查找值都应该是唯一的。假设1月份列出了两次,返回的值将是第一次出现。

附加信息:

0

您可以使用查找功能如下:

=VLOOKUP(G48,G34:I45,3)

此公式查找在列G(第一矩阵列)“G48”的值,并从塔返回值I(第三矩阵的列),这是同一排。

阅读官方办公室page了解更多详情。

请给我们您的反馈。