Я работаю над простым скриптом Powershell, который в основном копирует данные из одной книги Excel в другую. Однако выгода заключается в том, что первые 2 столбца уже заполнены во второй «основной» рабочей книге. Эта основная рабочая книга последовательно используется и заполняется, пока не достигнет строки 1000.
Проблема, с которой я сейчас сталкиваюсь, заключается в том, как заставить ее искать следующую доступную пустую ячейку в третьем столбце.
Прошло несколько лет с тех пор, как я работал с Powershell, поэтому я немного заржавел, и мой текущий код не самый красивый и не самый эффективный, но в настоящее время работает.
Функция вставки, которую я сейчас использую, выглядит следующим образом:
function pasteexcel {
#Creates variable workbook using the second path for second excel workbook, then pastes the content copied from the first worksheet into the second starting at path G1
$path01 = @(Get-ChildItem C:\..\..\..\..\Test_File -Filter *.xlsx | Out-GridView -Title 'Choose the spreadsheet to paste to' -PassThru | ForEach-Object { $_.FullName })
$Workbook01 = $excel.Workbooks.open($path01)
$Worksheet01 = $Workbook01.WorkSheets.item(1)
$Range = $Worksheet01.Range("C1")
$Worksheet01.Paste($range)
$workbook01.Save()
Echo "Workbook 2 successfully updated"
Start-Sleep -s 1
}
Это код, который я сейчас использую для вставки в свой скопированный диапазон другой созданной функции, которая называется «copy excel».
Обе функции используются в простом меню с переключателем.
Я подумал об использовании простого цикла while, но я немного не уверен, как подойти к этому, поэтому любая помощь, которая может быть предоставлена, будет принята с благодарностью!