Powershell Excel Dokument bearbeiten
Hallo Zusammen, vlt. kann mir einer weiterhelfen. Irgendwie komm ich nicht mehr weiter...
Folgendes Szenario:
Ich habe mehrere Werte in einer CSV Datei ausgegeben. Nun möchte ich diese Werte in eine bestehende Excel Dateien eintragen lassen. In dieser Excel gibt es verschiedene Tabellenblätter, in wechem nur ein Werte aus der CSV eingetragen werden soll, der nächste Werte soll dann schon in das darauf folgende Blatt eingetragen werden.
Zwar hab ich jetzt hinbekommen das er die Werte in die Tabellenblätter einträgt, aber es sind in jedem Blatt alle Werte aus der CSV eingetragen. Ich möchte es aber fortlaufend auf jedem Blatt ein Wert.
Wahrscheinlich nur eine Kleinigkeit oder mein Ansatz ist total falsch. Würde mich sehr über Vorschläge freuen und vllt gibt es auch noch eine elegantere Lösung.
Vielen Dank im voraus!
VG
ONeil88
Folgendes Szenario:
Ich habe mehrere Werte in einer CSV Datei ausgegeben. Nun möchte ich diese Werte in eine bestehende Excel Dateien eintragen lassen. In dieser Excel gibt es verschiedene Tabellenblätter, in wechem nur ein Werte aus der CSV eingetragen werden soll, der nächste Werte soll dann schon in das darauf folgende Blatt eingetragen werden.
Zwar hab ich jetzt hinbekommen das er die Werte in die Tabellenblätter einträgt, aber es sind in jedem Blatt alle Werte aus der CSV eingetragen. Ich möchte es aber fortlaufend auf jedem Blatt ein Wert.
Wahrscheinlich nur eine Kleinigkeit oder mein Ansatz ist total falsch. Würde mich sehr über Vorschläge freuen und vllt gibt es auch noch eine elegantere Lösung.
Vielen Dank im voraus!
$objexcel = New-Object -ComObject Excel.Application
$workbook = $objexcel.WorkBooks.Open('C:\Temp\test.xlsx')
$blatt = 2
$Sheet = $workbook.WorkSheets.item($blatt) # Auswahl Worksheet
$objexcel.Visible=$true
$ordner = Get-Content -Path C:\Temp\Ordner.csv
$Spalte = 2
for($blatt;$blatt -le 4;$blatt++) #Hochzählen Blatt
{$Sheet = $workbook.WorkSheets.item($blatt)
$zeile = 1
foreach($Wert in $Ordner) #Werte aus CSV eintragen
{
#leere Zelle finden
$test = $Sheet.Cells.Item($Zeile,$spalte).text
while($test -ne "")
{
$Zeile++
$test = $Sheet.Cells.Item($Zeile,$spalte).text
}
#Ausgabe in die ermittelte freie Zelle eintragen
$Sheet.Cells.Item($Zeile,$spalte) = $Wert
}
}
VG
ONeil88
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 618581
Url: https://administrator.de/forum/powershell-excel-dokument-bearbeiten-618581.html
Ausgedruckt am: 04.05.2025 um 18:05 Uhr
1 Kommentar