如何排除第一行从排序Excel列通过使用PowerShell
本文关键字:Excel PowerShell 排序 一行 排除 何排除 | 更新日期: 2023-09-27 18:01:18
我想对一列进行排序(这是一个目标日期,我想按最早的日期进行排序)。问题是,第一行是一个文本(列的名称),所以当我按列F(目标日期)排序时,文本行会到excel文档的最后。我希望这个列名保留在每个列的顶部。
要排序的列
代码如下:
$objRange = $worksheet.UsedRange
$objRange2 = $Excel.Range("F2")
[void]$objRange.Sort($objRange2.Range("F2"))
我不确定如何排除排序这第一行。
由于您的范围有标题,您必须向Sort方法添加一个参数,以指示它不应该对标题进行排序。
你的range命令看起来像这样:
[void]$objRange.Sort($objRange2,1,$null,$null,1,$null,1,1)
Sort方法不喜欢xlSortOrder参数为$null,所以我只指定1表示升序。如果需要降序,请使用2。最后一个1是我们真正关心的参数。指定1表示是,该范围具有不应包含在排序操作中的标头。
语法参考:https://msdn.microsoft.com/en-us/library/office/ff840646.aspx