合计行,其他列包含特定的短语
我有一个像这样的Excel文件:
19-FM05 Heater 2.0 4.0 19-PB09 (M) Motor HPU 4.0 6.0 19-PB10A(M) Fan Motor 6.0 2.0 19-PB11A(M) Motor WCU 3.0 7.0 Motor 13.0 15.0 Other 2.0 4.0 Sum 15.0 19.0
我想要区分列A中包含(M)
的列,或者列B中的Motor
或motor
,然后对所有电机行和所有其他行进行求和。
(M)
之后可能有空格,所有包含(M)
行也包含下一列中的Motor
字样。
我不习惯在Excel中使用更高级的东西(例如VBA),并且找不到使用vlookup
, find
或类似方法执行此操作的方法。 有什么build议么?
这应该与SUMPRODUCT
。 你可以使用它来计算行方面的产品和总结这些。 在此,可以使用评估为1或0的条件。Motors的总和(C5中的13.0)将是:
=SUMPRODUCT(NOT(ISERROR(FIND("(M)",A1:A4)))*(C1:C4))
我使用的方法是在数字列中包含数字(如果条件符合),否则为0。 所以在你的情况下,使用公式制作一个列
= IF(ISNUMBER(SEARCH( “(M)”,A1)),C1,0)
在第一行,然后复制到列。 那么当你总结新的colume时,你只会得到一个包含“(M”)的行的总和
= IFERROR(IF(FIND( “(M)”,A1)> 0, “是”, “否”), “否”)
如果你坚持这个D列,它会返回是,如果A1包含“(M)”,没有,如果没有。 这将帮助你过滤,你可以玩这个。 然后,您可以使用SUMIF函数来合计列D包含是的行。
有可能是一个更优雅的做法,但这样做简单,可读性强。
我build议使用=IF(IFERROR(FIND("M)",B2),0)+IFERROR(SEARCH("motor",C2),0)>0,"TRUE","")
向下复制并且=SUMIF($A2:$A5,"TRUE",D2:D5)
到Motor
的右侧并复制, Other
计算为Motor
与Sum
之间的差值,后者用自动求和计算。