如何使用powershell转换数据,然后抓取我想要的用户

How do I convert data using powershell and then grab the users I want

我如何创建一个变量来存储数据以供进一步操作,然后将来自 Excel 文档的数据转换为 PSCustomObject,然后将其过滤到我关心的人

这是我目前的情况:

$excel = new-object -comobject Excel.Application
$path = "C:\Users\Test.xlsx"
$excel.workbooks.open($path)
$excel.Visible = $True

$variable = $excel.workbooks.open($path)
$worksheet = $variable.activeSheet


For ($j = 6; $j -lt 124; $j++) {
    For ($i = 1; $i -lt 11; $i++) {
     $worksheet.Cells.Item($j,$i).text
    }   
}

如果您在创建 PSCustomObject 期间不需要添加其他属性,则可以使用来自 RamblingCookieMonster 的 PSExcel module 来回答您问题的第一部分。查看示例 导出和导入数据 和 Import-XLSX 模块。

将 .XLSX 导入变量后,您可以将其通过管道传递给 ForEach-Object 以仅检索您关心的人。在下面的示例中,我的 .XLSX 中有一个名为 'Name' 的列,它与 Where-Object cmdlet 一起使用。

Import-Module \pathToModule\PSExcel

$FileContents = Import-XLSX -path "myFile.xlsx"

$FileContents | ForEach-Object {
    $_ | Where-Object Name -EQ 'User I care about'
}