我需要知道如何从一个名为" Items"的名为范围内返回一个单元格范围(例如A10:C20)。在Excel中使用PowerShell。我想删除" Items"的第二列中的条目。 (B10:B20)。我尝试使用.RefersToLocal方法返回范围,但它没有返回任何内容。我是PowerShell的新手。谢谢你的帮助。
$Path = "C:\file.xls"
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
$Workbook = $Excel.Workbooks.Open($Path)
$page = 'Main'
$ws = $Workbook.worksheets | where-object {$_.Name -eq $page}
$ws.Range("Items").RefersToLocal
答案 0 :(得分:0)
您可以直接使用范围,然后使用范围元素的列属性(B列为2)清除并保存它,如下所示:
$Path = "i:\named.xls"
$Excel = New-Object -ComObject Excel.Application
$Excel.Visible = $false
$Workbook = $Excel.Workbooks.Open($Path)
$page = 'Main'
$ws = $Workbook.worksheets | where-object {$_.Name -eq $page}
$namedarea = $ws.Range("items")
$namedarea | ?{$_.column -eq 2} | %{$_.clear()}
$excel.Save()