让“ sheet1”的A列为部门的类别编号(hr = 0,法律部门= 1,依此类推)
让“ sheet1”的B列是该部门是否已完成任务的文本(如果有文本,则说明该任务已完成,如果有空白,则该任务仍处于活动状态)
现在,我想按有效性来总结那些部门。因此,我希望统计每个部门的答案。
如果HR有10项任务,其中3项是“空白”,即回答了7项,那么我想在另一张工作表中提供此类统计信息,例如以下内容
编号,部门,已回答,未回答,已解决
0 -------- HR ----------- 3 -------------- 7 ---------- -10
我使用Countif函数(= COUNTIF('Sheet'!A:A,“ = 0”)轻松完成了这些任务,它向我显示了要解决的任务数。
与此同时,我尝试了match,countif,countifs,iflookup等其他功能,但它只是根据总体来计算我的数据,而不是按部门计算
我希望你明白我想要的。
预先感谢
答案 0 :(得分:0)
您的样本数据似乎与您的叙述相矛盾。
如果HR有10个任务,其中3个是“空白”,则表示已回答7个,
似乎数据应该更像
let data = {
"fbl": {
"id": "fbl",
"user_id": "fbl@xxx.fr",
"nb_error": 0,
"time": "1:27.700"
},
"dev": {
"id": "dev",
"user_id": "dev@xxx.fr",
"nb_error": 0,
"time": "1:12.54"
},
"jul": {
"id": "jul",
"user_id": "fbl@xx.fr",
"nb_error": 0,
"time": "0:58.700"
}
}
const formatTime =(time)=> parseFloat(time.replace(":",""))
const compareTime = (a,b)=>{
let a_time = formatTime(a["time"])
let b_time = formatTime(b["time"])
return a_time-b_time
}
const sort = (data) => {
let keys = Object.keys(data)
let dataAsArray = keys.map(e=>data[e])
return dataAsArray.sort(compareTime)
}
console.log(sort(data))
答案(非空白)应该是
No. Department Answered Unanswered Addressed
0 -------- HR ----------- 7 -------------- 3 ----------- 10
未回答(空白)应该是
=countifs('sheet1'!a:a, 0, 'sheet1'!b:b, "<>")