我只是对你的公式做一个小小的调整:
IF(C2="",SUM(C3:INDEX(C3:C,MATCH(TRUE,(C3:C=""),0))),"")
所以第一个总数是 11 而不是 9。
这是一个(实验性)数组公式版本,基于使用每组第一行中存在的 Dish 作为标记对每个组进行编号:
=ArrayFormula(if(A2:A="","",vlookup(countifs(A2:A,"<>",row(A2:A),"<="&row(A2:A)),
query({C2:C,countifs(A2:A,"<>",row(A2:A),"<="&row(A2:A))},"select Col2,sum(Col1) group by Col2"),2)))