Powershell Fehlercode kann ich nicht beheben?
Hallo zusammen,
Ich habe ein Powershell Script, welches die Informationen in einem Excel File füllen soll.
$objexcel=New-Object -ComObject Excel.Application
$workbook=$objexcel.WorkBooks.Open('C:\Users\Thoma\OneDrive\Desktop\CSGO Market\webauslesen.xlsx')
$workbook.worksheets.item("$item").activate()
$objexcel.Visible=$true
$worksheet.Cells.Item(1,1)=$item
$worksheet.Cells.Item(3,2)=Get-Date -Format f
$worksheet.Cells.Item(3,3)=$kauf_preis1
$worksheet.Cells.Item(3,4)=$kauf_anzahl1
$worksheet.Cells.Item(3,5)=$verkauf_anzahl1
$workbook.Save
Die Variablel $item ist ein String und bekam oben den Text "breakout_case" zugewiesen. $worksheet habe ich oben in den Wert 1 zugewiesen.
In der Vorlage, welche ich verwendet habe, wurde $worksheet der Wert des $workbook zugewiesen. Aber auch das funktioniert nicht.
Ich kann mir nicht vorstellen, was der Fehler sein könnte. Ich Danke euch bereits für eure Mühe.
Wie lauten Fehlercode und genaue Fehlermeldung?
Kannst du oben nicht auf das Bild klicken? Sollte eigentlich erscheinen.
Fehlermeldung:
Es ist nicht möglich, eine Methode für einen Ausdruck aufzurufen, der den NULL hat.
3 Antworten
Ich sehe einen Fehler in der ersten Zeile, die müsste so aussehen:
$objexcel=New -Object -ComObject Excel.Application
aber ich kann mich irren nur so sieht es normal aus in anderen Sprachen.
...ähm? Das ist PowershellScript?
Du irrst...😉
Ich kann leider nur einen Schuß ins Blaue machen (ich habe Exel nicht installiert (und so soll es auch bleiben!))
$workbook.worksheets.item("$item").activate()
.worksheets('string').activate() erwartet erstmal in der Klammen einen String mit dem Namen des Sheets
$item ist jedoch überhaupt nicht definiert (also $null)...
Du hast
$worksheet
nicht deklariert, weswegen in jeder der fünf Zeilen, die damit beginnen, das $-Zeichen als Fehler angezeigt wird.
Und wie sollen dann die Felder zustandekommen, wenn Du
$worksheet
offensichtlich als Zahl deklariert hast?
Aber vielleicht irre ich, ich nutze kein PowerShell.
wie kann ich das deklarieren?
Ich habe dieser Variabel zu Beginn den Wert 1 zugewiesen
[string]$worksheet = 1