1

我的 excel 电子表格有 11028 行和两列。

第一列有组织单位,第二列有值。

在 Excel 中,我可以过滤第一列,以便有大约 100 个不同的组织单位。对于每个组织单位,我想计算 (1) 总行数 (2) 值为“未知”的行数。

如果我手动执行此操作,它将花费很长时间,因此我在 powershell 中寻找某种 API,它允许我根据 A 列中设置的过滤器计算 B 列中的行数。

这在 Powershell 中是否可行?

4

2 回答 2

3

尝试只使用 Excel。

如果您复制包含组织单位的列,并对其使用删除重复项功能,您最终将得到一个包含组织单位唯一条目的列。那么你只需要两个简单的公式:COUNTIF()COUNTIFS()

对于每个组织单位:

1) 总行数

假设 A 列是您的组织单位(原始),D 列是您的唯一条目:

=COUNTIF($A$1:$A$10,D1)

那是:

=COUNTIF(organisational unit range, particular organisational unit)

示例布局,显示 A 列中元素计数的公式

A 列中唯一条目的计数

2) 有值的行数"Unknown"

为此,您可以使用COUNTIFS()which 需要多个条件。

假设 B 列有您的值,其中一些是"Unknown".

=COUNTIFS($A$1:$A$10,D1,$B$1:$B$10,"Unknown")

那是:

=COUNTIFS(organisational unit range, particular organisational unit, value range, "Unknown")

显示多个条件匹配的示例Unknown

匹配的条目数

于 2013-09-17T18:47:06.637 回答
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                        
于 2013-09-20T17:32:57.717 回答