Festlegen des Excel-Arbeitsmappennamens mit PowerShell

Festlegen des Excel-Arbeitsmappennamens mit PowerShell

In Bezug auf nixdas Antwort inWie kann ich Excel so einstellen, dass alle Spalten von CSV-Dateien immer als Text importiert werden?, wie kann ich den Arbeitsmappennamen in PS festlegen, wenn ich dieses Skript (PowerShell-Skript zum Öffnen von CSVs direkt aus dem Windows Explorer) verwende, um eine Text- oder CSV-Datei zu öffnen? Mit dem von nixda bereitgestellten Skript lautet der Arbeitsmappenname book1 (der Standard).

Ich kann anscheinend keine gute Referenz finden, in der die Benennung von Arbeitsmappen in PowerShell erläutert wird.

Antwort1

BEARBEITEN:Ich habe Ihre Frage offensichtlich missverstanden. Sie möchten den Arbeitsmappennamen ändern. Ich denke, der Arbeitsmappenname wird beim Speichern festgelegt. Sie können die ComObjects- SaveAs()Methode verwenden:

$workbook.SaveAs("C:\Users\user\Desktop\TEST.xlsx")

Durch die Untersuchung des Excel.Application.com-Objekts, das in der erwähnten Antwort verwendet wurde, können Sie den Excel-Tabellennamen anscheinend mit dem folgenden Code festlegen:

$excel = new-object -ComObject excel.application
$workbook = $excel.Workbooks.Add()
$workbook.ActiveSheet.Name = "TEST"

Wenn Sie dies überprüfen, indem Sie die Visible-Eigenschaft von „False“ auf „True“ ändern:

$excel.Visible = $true

Der Name sollte sich ändern.


Darüber hinaus können Sie sich ImportExceldas Powershell-Modul von Doug Finke ansehen. Es bietet eine sehr gute Möglichkeit, Excel-Dateien zu bearbeiten (nur neues XLSX-Format).

https://github.com/dfinke/ImportExcel

verwandte Informationen