我有員工及其合同型別的電子表格,格式如下
姓名 | 合同型別 |
---|---|
員工1 | 永恒的 |
員工2 | 合同 |
員工3 | 實習生 |
員工4 | 永恒的 |
員工5 | 永恒的 |
員工6 | 國際米蘭 |
員工7 | 合同 |
依此類推直到 EmployeeN
我必須計算員工人數,并創建每個型別的員工姓名的 CSV 串列,例如
型別 | 數數 | 姓名 |
---|---|---|
永恒的 | 4 | 員工 1、員工 4、員工 5、員工 14 |
合同 | 3 | 員工 2、員工 7、員工 21 |
實習生 | 2 | 員工 3、員工 6 |
這個需要自動更新,所以如果Employee2的contract type改成Permanent,那么Contract行的count變為2,Permanent行的count變為5,并且更新姓名串列
我曾經COUNTIFS
統計過每種員工型別的人數,但無法更新姓名串列
我嘗試使用創建一系列名稱,VLOOKUP
但它只回傳一個值,我需要多個值才能使用該CONCATENATE
方法
uj5u.com熱心網友回復:
如果您使用的是 Excel 365,則可以將該函式Textjoin
與Filter
=Textjoin(",",TRUE, Filter([Name Column], [Contract Column] = [Contract Cell]))
這將根據合同列與合同單元格參考相同的位置組合名稱并用逗號分隔名稱。用單元格參考替換 [ ] 中的變數,確保正確鎖定它們。
如果您通過點擊CTRL
使用表格格式,T
您可以命名參考,以便在表格擴展或更改時它仍將參考正確的范圍。
使用Unique
您還可以獲取所有合同型別的串列,以防它們被添加。
uj5u.com熱心網友回復:
您正在尋找 =TEXTJOIN。
=TEXTJOIN(Delimiter,TRUE,IF(ConditionRange=Condition,Range,""))
在您的情況下,“分隔符”將是“,”。ConditionRange 將是資料中包含“永久”、“合同”或“實習生”的范圍。條件將是當前行的型別,范圍將是包含資料中員工姓名的單元格范圍。
uj5u.com熱心網友回復:
我提出了一個基于 VBA 的解決方案,其中包含一個 UserDefinedFnction MyConCat()。如果您被允許使用 VBA,請查看MyConCat 的這篇舊帖子
該函式的使用方式類似于 Google-Sheet 的“join”,例如:=myConCat("/",b3:b5)
或:[=myConCat(",", if(employees!B2:B20=A2, employees!A2A20, "") )]
[] 中的公式是一個陣列,所以編輯然后按“ctrl shft Enter”而不是簡單的輸入...
同樣,如果公司政策禁止 VBA 并且 Excel 沒有 TextJoin(),那么請考慮使用 Google-Sheets。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/328265.html
上一篇:Openpyxl不修改單元格值