Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Получение значения ячейки Excel в переменную Powershell (http://forum.oszone.net/showthread.php?t=339982)

dyshes90 04-04-2019 12:56 2866555

Получение значения ячейки Excel в переменную Powershell
 
Вложений: 1
Доброго времени суток, столкнулся с проблемой выборки данных из таблицы в пристежке:

Два столбца со значениями. Нужно, если поиск находит значение ячейки A1, в переменную передавалось значение ячейки B1 и так далее.
Вот кусок кода по поиску значения, он работает, выдает ячейку, где находится значение, как дальше ума не приложу... Помогите по возможности....

Код:

$SearchText = '*1'
$Excel = New-Object -ComObject Excel.Application
$Files = Get-ChildItem C:\Users\Документ.xlsx -Recurse | Select -Expand FullName
$counter = 1
ForEach($File in $Files){
    Write-Progress -Activity "Checking: $file" -Status "File $counter of $($files.count)" -PercentComplete ($counter*100/$files.count)
    $Workbook = $Excel.Workbooks.Open($File)
    $e = new-object -com excel.application
    If($Workbook.Sheets.Item(1).Range("A:Z").Find($SearchText)){
$book = $e.Workbooks.Open($Workbook.FullNameURLEncoded)
$sheet = $book.WorkSheets.item(1)
$Cell = $sheet.range("A:Z").find("$SearchText")
$Workbook.FullNameURLEncoded
$SearchText
$Cels = $Cell.address($false ,$false)
        $Workbook.Close($false)
    }
else {
    $workbook.close($false)
}
}


Iska 05-04-2019 00:55 2866660

Цитата:

Цитата dyshes90
Нужно, если поиск находит значение ячейки A1, в переменную передавалось значение ячейки B1 и так далее. »

Используйте метод .Offset() класса .Range. Мне только непонятно, зачем Вы дважды открываете одну и ту же Рабочую книгу?!


Время: 01:12.

Время: 01:12.
© OSzone.net 2001-