如何在PowerShell和Excel中添加筛选器

如何在PowerShell和Excel中添加筛选器,excel,powershell,Excel,Powershell,我正在尝试将每月必须完成的报告自动化,并尝试使用PowerShell和Excel来实现这一点 下面是我刚刚想出的打开CSV文件的代码。我需要帮助将筛选器应用于A1:到G1:。这样我就可以从那里过滤出我需要的东西 $excel = New-Object -ComObject excel.application $wb = $excel.Workbooks.Open("U:\Local Group Members.csv") $excel.visible=$true $excel.DisplayAl

我正在尝试将每月必须完成的报告自动化,并尝试使用PowerShell和Excel来实现这一点

下面是我刚刚想出的打开CSV文件的代码。我需要帮助将筛选器应用于A1:到G1:。这样我就可以从那里过滤出我需要的东西

$excel = New-Object -ComObject excel.application
$wb = $excel.Workbooks.Open("U:\Local Group Members.csv")
$excel.visible=$true
$excel.DisplayAlerts = $false
Import-CSV "U:\Local Group Members.csv" | Sort-Object Netbios_name0, Name0
如何创建筛选器,然后使用筛选器对Netbios列进行排序

以下是Excel列第一行的图片:


比尔所说的是将Excel排除在等式之外——相对于使用普通PowerShell,Excel COM对象令人难以置信地痛苦。只要这是你的实际问题:

如何创建筛选器,然后使用筛选器对 Netbios列

然后,您实际上只需要一行PowerShell就可以完成您想要的任务:

Import-Csv 'U:\Local Group Members.csv' | Sort-Object -Property Netbios_name0 | Export-Csv -notypeinformation newcsv.csv

比尔所说的是将Excel排除在等式之外——相对于使用普通PowerShell,Excel COM对象令人难以置信地痛苦。只要这是你的实际问题:

如何创建筛选器,然后使用筛选器对 Netbios列

然后,您实际上只需要一行PowerShell就可以完成您想要的任务:

Import-Csv 'U:\Local Group Members.csv' | Sort-Object -Property Netbios_name0 | Export-Csv -notypeinformation newcsv.csv

我建议在PowerShell而不是Excel中执行所有排序和筛选,然后在最后使用导出Csv来创建所需的数据文件。@Bill_Stewart所以你要说的是,我甚至不要从我拥有的代码开始?我是powershell的新手,我正在尝试学习如何使用powershell自动化此过程。非常感谢-不要使用Excel,而是在PowerShell中进行查询和排序,然后在结尾处导出Csv以获取报告。我建议在PowerShell中执行所有排序和筛选,而不是Excel,然后在结尾处使用导出Csv来创建所需的数据文件。@Bill\u Stewart所以你的意思是我甚至不要从我拥有的代码开始?我是powershell的新手,我正在尝试学习如何使用powershell自动化此过程。谢天谢地-不要使用Excel,而是在PowerShell中进行查询和排序,然后在最后导出Csv以获取报告。我希望能够筛选Netbios列,并仅为管理员保留数据行。您在哪个列中有用于标识“管理员”的数据,以及如何将他们标识为“管理员”?我希望能够筛选Netbios列,并仅为管理员保留数据行。您有哪些列的数据可用于标识“管理员”以及如何将他们标识为“管理员”?