-1
我試圖通過刪除不需要的條目來基於單元格日期值是否超過x天來生成Excel報表,以改善正在運行的Powershell腳本。 PowerShell代碼是否正確,可以刪除超過14天的行?如果不需要單元格日期值範圍,刪除Excel電子表格中的行
謝謝。
$minus14days = (get-date).Adddays(-14).ToString('dd/MM/yyyy')
$exceldate = (get-date).ToString('dd/MM/yyyy')
$minus14days = [STRING] $minus14days
$xlCellTypeLastCell = 11
$usedup = $sheet1.usedRange
$lastCell = $usedup.SpecialCells($xlCellTypeLastCell)
$row = $lastCell.row
$exRange = $sheet1.usedRange
for ($i = 0; $i -le $row; $i++) {
If ($exRange.Cells.Item($i, 1).value() -lt $minus14days) {
$Range = $exRange.Cells.Item($i, 1).EntireRow
$Range.Delete()
$i = $i - 1
}
}
SO不是代碼審查,如果你想知道,如果你的代碼的工作,然後只要運行它,看看自己......現在你code' $ minus14days = STRING] $ minus14days', '$ exRange = $ sheet1.usedRange'是多餘的。否則它應該沒問題(我們只能猜測,因爲我們沒有你的excel文件) – Paul 2014-11-22 19:09:02
我已經嘗試過了。它似乎將列移1,而不是刪除所需的行。我想知道我是否應該計算並指定一個完整的範圍而不是使用'usedRange'? – Maverick 2014-11-22 19:14:44
編輯您的問題,以包含此信息 – Paul 2014-11-22 19:17:56