Excel - 根據起始字串過濾行,從過濾行讀取數字並執行算術運算以產生列摘要

Excel - 根據起始字串過濾行,從過濾行讀取數字並執行算術運算以產生列摘要

我有一份專案和資源分配報告。我需要幫助生成公式以在報告底部顯示摘要。

以下是我的報告的規格:

  • Column ARow 2Row 15代表為每個項目分配的資源(人)

  • Column B, Column C.... 表示每月每個項目分配的資源百分比

  • 每個資源都column A合併到 2 個單元中,因為每個資源每月可以在 1 或 2 個專案中工作

  • 一個月內處理單一項目的資源將合併兩個單元。處理 2 個項目的資源將有 2 行代表該項目

  • 對於每個項目,都有代表分配給該項目的資源百分比的數字

這是我的報告的螢幕截圖:

專案和資源分配報告截圖

在底部報告中,我有摘要部分,它表示每個項目分配的資源數量。目前這些計數是由我手動新增的。我需要幫助來產生這些摘要的公式。這就是我想要實現的目標:

  1. 從單元格讀取字串 (A20 - A24)
  2. 在月份列 (B2 - B15) 中進行查找以取得以項目字串開頭的儲存格
  3. 過濾上述儲存格中的數字(來自步驟 2)
  4. 將數字求和並除以100得到資源計數

到目前為止,我能夠產生這個公式,該公式讀取傳遞給它的行中的數字:

=TEXTJOIN("",TRUE,IFERROR((MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1)*1),""))

這給了我包含文字的50單元格的編號。B2"Project A 50%"

答案1

如果您有O365,您可以使用以下FILTER功能:

  • 按 A20:Ann 的內容過濾列表

  • 僅傳回每個字串中最後一個空格分隔的值(百分比)

  • 對結果求和

  • IFERROR當項目不存在時使用

      =IFERROR(SUM(--((TRIM(RIGHT(SUBSTITUTE(FILTER(B$2:B$15,ISNUMBER(SEARCH($A20,B$2:B$15)))," ",REPT(" ",99)),99))))),"")
    

或者(取決於您是要返回零還是""要返回不存在的條目)

    =IFERROR(SUM(--((TRIM(RIGHT(SUBSTITUTE(FILTER(B$2:B$15,ISNUMBER(SEARCH($A20,B$2:B$15)))," ",REPT(" ",99)),99))))),"")

編輯:在評論中,OP提到項目可以類似地命名,但前面加上一個字符,這些應該分開處理。這需要不同的過濾條件:

=IFERROR(SUM(--((TRIM(RIGHT(SUBSTITUTE(FILTER(B$2:B$15,LEFT(B$2:B$15,LEN($A20))=$A20)," ",REPT(" ",99)),99))))),"")

在此輸入影像描述

答案2

第 2-15 行中的資料表示很混亂,因為您將兩個資訊組合在一個儲存格中。這基本上會禁用所有數位單元格函數的可用性。將項目識別碼和資源數量分成兩列。

給定 B 列中的項目識別碼和 C 列中的資源,您只需將儲存格 B20 設定為「=sumif(b$2:b$15;「A」;c$2:c$15)」。對於專案 B,您可以將該公式修改為“B”。

為了在不修改公式的情況下更快地輸入,建立一個包含 ABCD .... 的隱藏列,並讓上面公式中的固定字串指向隱藏值 ABCD ....

答案3

您可能不太喜歡這個答案,但請保持開放的心態

想必這不會是您最後一次需要分析該表。如果你現在重組,你以後的生活會更輕鬆。

  1. 合併單元當時感覺是個好主意,但以後它們只會帶給你悲傷
  2. 將變數組合到單一單元格「Project A 50%」中總是會使分析變得更加困難,因為您現在必須將這些變數分開才能理解它們
  3. 輸入交叉表資料可能稍微簡單一些,但這是有代價的。如果您現在需要產生一份報告,詢問分配給專案 A 的年比季度資源,該怎麼辦?另外,到了明年會發生什麼事?建立一個新表?那麼你要如何比較它們呢?

我並不是想變得遲鈍,但在使用 Excel 和其他系統中的數據 25 年後,我想鼓勵人們思考他們以後可能需要做什麼。

像這樣的事情會給你最好的幫助:

在此輸入影像描述

請注意,使用 Ctrl+T 或功能區「首頁」標籤上的「格式化為表格」將其格式化為表格。

這種結構有很多好處:

  1. 現在只需在新行中輸入即可輕鬆輸入數據
  2. 可以使用資料透視表跨任何維度(人、月、專案)進行分析 - 對於簡單的問題沒有複雜的公式
  3. 現在繪製圖表變得非常簡單
  4. 您可以將新資訊作為列新增到每行。也許您想要將該人的直線經理或團隊名稱作為另一個表中的 XLOOKUP 添加到該行,或者您可能想要添加有關該人該月的績效或假期的註釋
  5. 如果您需要將其複製到另一個電子表格中或將其作為 csv 發送給某人或將其加載到資料庫或資料框中的表格中進行分析,則無需花費時間取消合併和填充空白儲存格在你能做到這一點之前

編輯:

若要使用此修訂後的資料結構回答您的問題,您可以簡單地建立資料透視表:

在此輸入影像描述

相關內容