簡體   English   中英

ArrayFormula 到按拆分字符串分組的總和

[英]ArrayFormula to sum amount grouped by split string

您好,我有下表:

在此處輸入圖像描述

我需要計算t1行中每個人的總金額。 對於t1 ,“評論”將始終具有相同的格式。 每個人的分隔符將是", " ,對於他們的百分比,它將是" - " 我打算為這個單元制作一些向導以方便進入人員,但還不確定,無論如何它已經超出了這個問題的 scope。

因此,我的結果表將如下所示:

在此處輸入圖像描述

如果 ArrayFormula 太復雜,那么普通公式也可以,人不會太多行。

到目前為止,我能夠過濾行並拆分人員以獲得如下范圍:

Person1 - 50% | John - 50% |               | $100.00
Smith - 10%   | John - 10% | Person1 - 80% | $1,000.00
Smith - 100%  |            |               | $2,000.00

用公式:

={FILTER(ARRAYFORMULA(SPLIT(C2:C6, ", ", false)), A2:A6 = "t1"), FILTER(ARRAYFORMULA(B2:B6), A2:A6 = "t1")}

但堅持繼續前進

實時示例: https://docs.google.com/spreadsheets/d/1e3IJaiOSlkia6ce9UGgIL_sNR6FK5TOp-BNrSYwS8Lg/edit?usp=sharing

請在單元格G2中使用以下內容並下拉其中的 rest

=SUM(QUERY({$A$2:$B$6,INDEX(IFNA(SPLIT(REGEXEXTRACT($C$2:$C$6,E2&" - \d+"),"-")))},
        "select Col4*Col2/100 where Col3 is not null "))

在此處輸入圖像描述

(您可以使用頂部菜單根據自己的喜好重新格式化結果: Format > Number


使用的功能:

在此處輸入圖像描述

這是下面的公式:

=SUMPRODUCT(B:B,ARRAYFORMULA(IFNA(REGEXREPLACE(REGEXEXTRACT(C:C,E2&" - [0-9]+%"),E2&" - ",""),)))

REGEXEXTRACT(C:C,E2&" - [0-9]+%") - 提取“person - percent”之類的文本,指定人名。 例如,人名是 Person1,公式結果是 Person1 - 50%。

REGEXREPLACE(①,E2&" - ","")) - 只從①的結果中提取百分比。 在上面的示例中,公式結果為 50%。

ARRAYFORMULA(IFNA(②,)) - 生成對應於人(Person1)的百分比數組。

SUMPRODUCT(C:C,③) - 對人(Person1)對應的金額和百分比求和

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM