我有一个包含许多列的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()