无法从PowerShell中selectExcel工作表

我只是学习PowerShell,不幸的是坚持使用V2而不是最新版本。 我想要做的是打开Excel 2010并select一个特定的工作表。 问题是我不能select我感兴趣的工作表。这是我的代码:

$objExcel=New-Object -ComObject Excel.Application $objExcel.Visible=$True $workbook=$objExcel.Workbooks.Open($excelfile) $worksheet = $workbook.worksheets | where {$_.name -eq 'AnalysisMain'} Write-Output "worksheet: $worksheet" 

我已经validation了工作表名拼写正确,代码看起来不错,但结果是没有工作表返回 – 结果为空。

我去哪里了?

在我的testing中:

 $objExcel=New-Object -ComObject Excel.Application $objExcel.Visible=$True $workbook=$objExcel.Workbooks.Open('C:\\_Stuff\\test.xlsx') $worksheet = $workbook.worksheets.item('Sheet1') Write-Output $worksheet.name 

生成预期的输出“Sheet1”

这也工作:

 $objExcel=New-Object -ComObject Excel.Application $objExcel.Visible=$True $workbook=$objExcel.Workbooks.Open('C:\\_Stuff\\test.xlsx') $worksheet = $workbook.worksheets | where {$_.name -eq 'Sheet1'} Write-Output $worksheet.name 

你确定你的$workbook对象被设置?