2009-10-13 111 views
2

为什么我不能使用Worksheet类或Sheet接口将值写入Excel?我希望能够做这样的事情:将数据写入Excel 2007/PowerShell中的单元格

[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Interop.Excel") 
$Excel = New-Object Microsoft.Office.Interop.Excel.ApplicationClass 
$Workbook = $Excel.Workbooks.Add() 
$Worksheet = $Workbook.Worksheets.Add() 
$Worksheet.Cells.Item(1,1).Value2 = "Test" 

但是,相反,似乎你必须写使用ApplicationClass对象的值:

[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Interop.Excel") 
$Excel = New-Object Microsoft.Office.Interop.Excel.ApplicationClass 
$Workbook = $Excel.Workbooks.Add() 
$Worksheet = $Workbook.Worksheets.Add() 
$Excel.Cells.Item(1,1).Value2 = "Test" 

这似乎并不符合逻辑的我,因为我正在向我正在使用的特定工作表编写值,而不是在应用程序级别。

对此有何看法?

回答

3

我不能重现这一点。你以前的例子完全适合我。我通过设置$ Excel.Visible = $ true进行验证,我可以在单元格(1,1)中看到“测试”。

-Oisin

+0

对我来说也适用。 – 2009-10-13 16:43:28

+0

好吧,现在我觉得自己像一个白痴...我可以发誓我过去曾尝试过这一百万次,它从来没有奏效。 移动,没有什么在这里看到:( 感谢验证,家伙...... – 2009-10-13 16:54:18

相关问题