Dies ist eine alte Version des Dokuments!
EPPlus ist die Standalone DLL für das Powershell Modul ImportExcel.
$epplusDllPath = "C:\Users\manuel.zarat\Desktop\Aktuell\DB Backups\EPPlus.dll" $excelFilePath = "C:\Users\manuel.zarat\Desktop\Aktuell\DB Backups\Databases.xlsx" Add-Type -Path $epplusDllPath $package = New-Object OfficeOpenXml.ExcelPackage $package.Load([System.IO.File]::OpenRead($excelFilePath)) foreach ($ws in $package.Workbook.Worksheets) { Write-Output "Arbeitsblattname: $($ws.Name)" for ($row = 1; $row -le $ws.Dimension.End.Row; $row++) { $rowValues = @() for ($col = 1; $col -le $ws.Dimension.End.Column; $col++) { $cellValue = $ws.Cells[$row, $col].Text $rowValues += $cellValue } #Write-Output ("Zeile $row : " + ($rowValues -join ", ")) Write-Output "$($rowValues[0]) - $($rowValues[1])" } break }
# Pfad zur EPPlus-DLL und zur neuen Excel-Datei $epplusDllPath = ".\EPPlus.dll" $excelFilePath = "Test.xlsx" # EPPlus-DLL laden Add-Type -Path $epplusDllPath # Funktion zum Erstellen eines neuen Arbeitsblatts function Add-Worksheet { param ( [OfficeOpenXml.ExcelPackage]$package, [string]$sheetName ) return $package.Workbook.Worksheets.Add($sheetName) } # Funktion zum Hinzufügen von Daten in eine bestimmte Zelle function Add-CellValue { param ( [OfficeOpenXml.ExcelWorksheet]$worksheet, [int]$row, [int]$col, [object]$value ) $worksheet.Cells[$row, $col].Value = $value } # Funktion zum Hinzufügen einer ganzen Zeile function Add-Row { param ( [OfficeOpenXml.ExcelWorksheet]$worksheet, [int]$row, [array]$values ) for ($i = 0; $i -lt $values.Length; $i++) { Add-CellValue -worksheet $worksheet -row $row -col ($i + 1) -value $values[$i] } } # Hauptfunktion zum Erstellen der Excel-Datei mit mehreren Arbeitsblättern function Create-ExcelFile { param ( [string]$filePath ) # Neues Excel-Paket erstellen $package = New-Object OfficeOpenXml.ExcelPackage # Erstellen des ersten Arbeitsblatts und Hinzufügen von Daten $worksheet1 = Add-Worksheet -package $package -sheetName "Sheet1" Add-Row -worksheet $worksheet1 -row 1 -values @("Name", "Alter") Add-Row -worksheet $worksheet1 -row 2 -values @("John Doe", 30) # Erstellen des zweiten Arbeitsblatts und Hinzufügen von Daten $worksheet2 = Add-Worksheet -package $package -sheetName "Sheet2" Add-Row -worksheet $worksheet2 -row 1 -values @("Produkt", "Preis") Add-Row -worksheet $worksheet2 -row 2 -values @("Laptop", 999.99) # Erstellen des dritten Arbeitsblatts und Hinzufügen von Daten $worksheet3 = Add-Worksheet -package $package -sheetName "Sheet3" Add-Row -worksheet $worksheet3 -row 1 -values @("Land", "Hauptstadt") Add-Row -worksheet $worksheet3 -row 2 -values @("Deutschland", "Berlin") # Datei speichern $package.SaveAs([System.IO.File]::Create($filePath)) # Bestätigungsausgabe Write-Output "Excel-Datei erfolgreich erstellt unter: $filePath" } # Excel-Datei erstellen Create-ExcelFile -filePath $excelFilePath