如何使用PowerShell搜索列中的文本并在新列中返回数据?

时间:2019-01-09 16:03:54

标签: excel vba powershell

我有一个包含许多列的Excel文件,我需要搜索并获取包含搜索文本的数据并将其返回到新列。我的数据如下。

列A:

xxxxx\detail\A1\yyyy
aaaaa\detail\A2\zzzz
A3

我想要以下结果。

B列:

detail\A1
detail\A2
A3

我的代码在下面,但是它返回搜索文本的位置。

$File = "C:\\Testt.xlsx"
$SearchString = "detail\" + "*"+ "\"
$Excel = New-Object -ComObject Excel.Application
$Workbook = $Excel.Workbooks.Open($File)
for ($i = 1; $i -lt $($Workbook.Sheets.Count() + 1); $i++) {
    $Range = $Workbook.Sheets.Item($i).Range("A:A")
    $Target = $Range.Find($SearchString)
    $First = $Target
    do {
        Write-Host "$i $($Target.AddressLocal())"
        $Target = $Range.FindNext($Target)
    } while ($Target -ne $null -and $Target.AddressLocal() -ne $First.AddressLocal())
}
$Excel.Quit()

0 个答案:

没有答案