informatique:windows:powershell:excel-separer-feuilles
This is an old revision of the document!
Séparer des feuilles Excel dans des fichiers
Le code n'est pas de moi mais d'un utilisateur anonyme (user4039065) sur Stackoverflow. Je le colle ici à titre d'aide mémoire :
Il faut modifier les variables $filepath et $WorkbookName par les noms du fichier à traiter.
$Excel = New-Object -ComObject “Excel.Application”$Excel.Visible = $false #Runs Excel in the background. $Excel.DisplayAlerts = $false #Supress alert messages. $filepath =“D:\powershell\test.xlsx”$Workbook = $Excel.Workbooks.open($filepath) $WorkbookName = “test.xlsx”$output_type = “xlsx” if ($Workbook.Worksheets.Count -gt 0) { write-Output “Now processing: $WorkbookName” $FileFormat = [Microsoft.Office.Interop.Excel.XlFileFormat]::xlOpenXMLWorkbook $WorkbookName = $filepath -replace “.xlsx”, “” foreach($Worksheet in $Workbook.Worksheets) { $Worksheet.Copy() $ExtractedFileName = $WorkbookName + “~~” + $Worksheet.Name + “.” + $output_type $Excel.ActiveWorkbook.SaveAs($ExtractedFileName, $FileFormat) $Excel.ActiveWorkbook.Close write-Output “Created file: $ExtractedFileName” } } $Workbook.Close() $Excel.Quit() [System.Runtime.Interopservices.Marshal]::ReleaseComObject($Excel) Stop-Process -Name EXCEL Remove-Variable Excel
informatique/windows/powershell/excel-separer-feuilles.1556206601.txt.gz · Last modified: 2020/02/28 09:42 (external edit)