首页 > 解决方案 > 如何在包含字母的每个第二个单元格上使用 =COUNTIF()?

问题描述

  1. 我想跟踪员工当月的工作时间,包括休假时间和加班时间。

  2. 我每个月的每一天都使用两个单元格。单元格 1 = 工作小时数/员工休假。单元格 2 = 加班时间

  3. 当天的工作时间单元格将包含一个数字(他们当天工作了多少小时)或一个字母(一个“V”,表示他们当天休假)。

  4. 每个“V”将计为 8 小时的休假。

  5. 我需要计算范围内的每隔一个单元格,从第一个单元格开始移动到第三个单元格,依此类推。第一个单元格用于工作/休假时间,第二个单元格用于加班时间。所以我需要一个公式来跳过加班单元格。

  6. 我想在范围上使用 =COUNTIF() 公式来计算字母出现的次数。然后,这封信将在总休假单元格中增加 8 小时。

目前我只是选择每个单元格并为其添加一个 IF 公式。但我必须做 35 次。我粘贴了我目前必须输入的公式以达到我需要的结果。但是我必须为工作表中的其他单元格重复公式(它将使用其他字母),如果我想将字母“V”更改为其他任何内容,我将不得不去更改每个“V”。

=IF(B5="V",8)+IF(D5="V",8)+IF(F5="V",8)+IF(H5="V",8)+IF(J5="V",8)+IF(L5="V",8)+IF(N5="V",8)+IF(P5="V",8)+IF(R5="V",8)+IF(T5="V",8)+IF(V5="V",8)+IF(X5="V",8)+IF(Z5="V",8)+IF(AB5="V",8)+IF(AD5="V",8)+IF(AF5="V",8)+IF(AH5="V",8)+IF(AJ5="V",8)+IF(AL5="V",8)+IF(AN5="V",8)+IF(AP5="V",8)+IF(AR5="V",8)+IF(AT5="V",8)+IF(AV5="V",8)+IF(AX5="V",8)+IF(AZ5="V",8)+IF(BB5="V",8)+IF(BD5="V",8)+IF(BF5="V",8)+IF(BH5="V",8)+IF(BJ5="V",8)+IF(BL5="V",8)+IF(BN5="V",8)+IF(BP5="V",8)+IF(BR5="V",8)

标签: excelexcel-formula

解决方案


不确定我是否正确理解了您的问题,但这里有一个 B5:N5 范围的示例,其中包含四个 V。该公式每隔一列 ( MOD(COLUMN(B5:N5),2)=0) 检查一次,8如果值等于则返回V。请注意,这是一个数组公式,因此需要使用Ctrl+Shift+Enter.

因为有四个 V,所以结果是 4*8=32。您可以根据需要轻松调整/扩展范围B5:N5

=SUMPRODUCT(IF(MOD(COLUMN(B5:N5),2)=0,IF(B5:N5="V",8),0))

在此处输入图像描述


推荐阅读