我的excel电子表格有11028行和两列。
第一列有组织单位,第二列有值。
在Excel中,我可以过滤第一列,以便有大约100个不同的组织单位。对于每个组织单位,我想计算(1)总行数(2)行数值为“未知”。
如果我手动执行此操作,将需要永远,因此我在powershell中寻找某种API,这将允许我根据A列中设置的过滤器计算B列中的行数。
这在Powershell中甚至可能吗?
答案 0 :(得分:3)
尝试使用Excel。
如果您复制包含组织单位的列,并在其上使用删除重复项功能,则最终会得到一个包含组织单位唯一条目的列。然后,您只需要两个简单的公式:COUNTIF()
和COUNTIFS()
。
对于每个单位部门:
1)总行数
假设列A是您的组织单位(原始),而列D是您的唯一条目:
=COUNTIF($A$1:$A$10,D1)
这是:
=COUNTIF(organisational unit range, particular organisational unit)
示例布局,显示了计算A列中元素的公式
2)值为"Unknown"
为此,您可以使用COUNTIFS()
,它采用多个标准。
假设列B具有您的值,其中一些值为"Unknown"
。
=COUNTIFS($A$1:$A$10,D1,$B$1:$B$10,"Unknown")
这是:
=COUNTIFS(organisational unit range, particular organisational unit, value range, "Unknown")
显示Unknown
答案 1 :(得分:2)
$data = @"
Field1, Field2
a,1
b,2
c,3
a,Unknown
b,5
c,Unknown
a,7
b,8
c,Unknown
c,10
"@ | ConvertFrom-Csv
'Total Rows'
$data | group field1 -NoElement
'Total Rows with Unknown'
$data | Where {$_.field2 -eq 'unknown'} | group field1 -NoElement
Total Rows
Count Name
----- ----
3 a
3 b
4 c
Total Rows with Unknown
Count Name
----- ----
1 a
2 c