#excel #powershell #copy-paste
Вопрос:
Я действительно новичок в powershell и пытаюсь написать сценарий, который поможет мне скопировать 2 или более столбцов и вставить их только в один с определенным форматом.
Чего я хочу, так это чего-то подобного :
Прошло 2 дня, я искал правильный синтаксис и не могу его найти
Спасибо за вашу помощь !
Комментарии:
1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.
Ответ №1:
На самом деле, я пытаюсь узнать, как работают excel и powershell ( я начал 1 неделю назад, поэтому ничего не знаю). Я нашел скрипт для копирования/вставки некоторых столбцов. Я понимаю, как это работает, но знаю, что хотел бы вставить эти столбцы только в один ( как я уже сказал )
Вот сценарий, который у меня есть :
$ExcelPath = ''
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $true
$WorkBook = $Excel.Workbooks.Open($ExcelPath)
$Worksheet = $Workbook.WorkSheets.item(“lolo”)
$Worksheet2 = $Workbook.WorkSheets.item(“lala”)
$worksheet.activate()
$lastRow1 = $worksheet.UsedRange.rows.count
$range1 = $worksheet.Range("A2:C$lastRow1")
$range1.copy()
$worksheet2.activate()
$lastRow2 = $worksheet2.UsedRange.rows.count 1
$range2 = $worksheet2.Range("A$($lastRow2)")
$worksheet2.Paste($range2)
Ответ №2:
Преобразуйте свои данные в CSV с помощью примера. После этого зависит от того, что вы хотите сделать, хотите ли вы включить нулевые свойства или нет …
Import-Csv -Path filepath | Select-Object -Properties *, @{"l"="Col4", e={ "`"$($_.Col1)`", `"$($_.Col2)`",`"$($_.Col3)`",`"`",`"`"" } } | Export-CSV -Path outputpath -Encoding UTF8 -NoTypeInformation