所以我继承了一个Excel文件,用于为大约100名员工安排和跟踪PTO和OT时间。他们在一年中的每一天都有一个专栏,并将这一年分成两页。
我正在尝试创建一个总计表,显示每个员工的分组,并计算跟踪表中使用的每种时间代码类型。每次类型都有一个代码用于连续格式化NM1,NM2,......
我正在尝试创建一个公式,该公式将根据跟踪表上的名称列检查员工的姓名,然后只计算包含NM1等的单元格的行的一部分
这是现在的一个单元格:
=COUNTIF('2015MarNov'!$E$88:$AH$88,"*"&"NM1"&"*")
员工姓名在D栏中,这只计算一月份的NM1(E到AH列)。
答案 0 :(得分:0)
试试这个:
=COUNTIF(OFFSET($E$1:$AH$1,MATCH(<target employee cell>,$D:$D,0)-1,0),"*NM1*")
在这个例子中,我假设第1行包含标题,第2行以雇员开头。如果不是这样的话,请尝试以下方法:
=COUNTIF(OFFSET($E$5:$AH$5,MATCH(<target employee cell>,$D$6:$D$106,0),0),"*NM1*")
编辑,解释:
Match(<target employee cell>,<range of employees>,0)
此函数返回找到目标员工的相对行,即如果员工在D7中且范围是D6:D106则返回值为1,因为这是从起始范围的相对偏移(从0)
OFFSET(<range>,<rows>,<columns>)
此函数按指定的行数和列数移动任何给定范围。在上一个函数中,范围偏移1行(向下移1行)。
COUNTIF(<range>,<criteria>)
<range>
取决于OFFSET函数的移位范围。
答案 1 :(得分:0)
使用此:
=COUNTIF(INDEX('2015MarNov'$E:$E,MATCH("NAME",'2015MarNov'$D:$D,0)):INDEX('2015MarNov'$AH:$AH,MATCH("NAME",'2015MarNov'$D:$D,0)),"*"&"NM1"&"*")
将“NAME”更改为摘要表上具有Employee名称的单元格。您也可以将“NM1”更改为单元格引用。