2016-08-08 8 views
0

Ich möchte eine Spalte aussortieren (es ist ein Zieldatum und ich möchte es bis zum frühesten Datum sortieren). Die erste Zeile ist ein Text (Name der Spalte), also, wenn ich es nach Spalte F (Zieldatum) sortiere, geht Textzeile an das Ende des Excel-Dokuments. Ich möchte für diese Spalte Namen bleiben und oben auf jeder Spalte sein. HierSo schließen Sie die erste Zeile beim Aussortieren der Excel-Spalte aus, indem Sie PowerShell verwenden

Column I want to sort out

ist der Code:

$objRange = $worksheet.UsedRange 
$objRange2 = $Excel.Range("F2") 
[void]$objRange.Sort($objRange2.Range("F2")) 

Ich bin nicht sicher, wie aus dem Sortieren dieser ersten Reihe auszuschließen.

Antwort

1

Da Ihr Bereich über Header verfügt, müssen Sie der Methode Sort ein Argument hinzufügen, um anzugeben, dass die Header nicht sortiert werden sollen.

Ihr Bereich Befehl würde dann wie folgt aussehen:

[void]$objRange.Sort($objRange2,1,$null,$null,1,$null,1,1) 

Die Sort-Methode nicht mag $ null für die xlSortOrder Parameter so I angegeben nur 1, die aufsteigend bedeutet. Wenn Sie absteigen müssen, verwenden Sie 2. Die letzte 1 ist der Parameter, der uns wirklich interessiert. Die Angabe von 1 bedeutet ja, der Bereich enthält Header, die nicht in die Sortieroperation einbezogen werden sollten.

Syntax Referenz:

https://msdn.microsoft.com/en-us/library/office/ff840646.aspx

+0

Und wieder mein Freund, du bist mein Tag :) Es funktioniert wie ein Charme gespeichert haben :) Vielen Dank für Ihre Hilfe, ich schätze es wirklich. –

+0

Ich benutze C# aber meine Kopfzeile wird auch in der Liste sortiert – Si8

Verwandte Themen