2013-03-25 71 views
0

有沒有辦法使用PowerShell生成Excel電子表格而不使用Com對象?我有幾個非常難看的腳本,它們打開Excel Com對象,添加數據,運行一些宏,並保存文件以創建我需要的報告。如果我可以定義電子表格格式,然後使用PowerShell將csv轉換爲該格式,我認爲它會更快,並且總體上更好的腳本。我怎麼能這樣做?可能嗎?在PowerShell中創建/修改Excel電子表格而不使用Com對象?

+0

沒有任何COM對象或只是沒有Excel對象?這是OleDb的一種方法:http://blogs.technet.com/b/heyscriptingguy/archive/2008/09/15/how-can-i-write-to-excel-without-using-excel.aspx – 2013-03-25 16:04:03

+0

@ RichardMorgan我不想在腳本運行的系統上安裝Excel。是否有格式可以用純文本(類似於XML)編寫/定義來創建自定義報告? – EGr 2013-03-25 16:33:58

+0

@RichardMorgan我也想在需要的地方添加顏色/格式。 – EGr 2013-03-25 16:49:52

回答

2

工作簿.xls.xlsx文件?後者基本上是Zip文檔中的一堆XML文件,因此您可以從存檔中提取XML文件並從此處繼續。如果您需要在visualbasicscript.com上手工製作.xlsx文件this posting可能會有所幫助。

+0

謝謝,我認爲這是我想要的。我將研究使用Office XML格式開發報表。 – EGr 2013-03-25 18:38:27

+0

對於非常簡單的電子表格,查看「Excel xml電子表格2003」文件格式可能是一種想法,這種格式是普通的xml,不需要解壓縮。 http://en.wikipedia.org/wiki/Microsoft_Office_XML_formats – goorj 2015-01-07 08:02:10

0

如果您滿意訪問原始數據的電子表格/工作簿,轉儲到CSV,和/或做的Excel外一些額外的處理,看到this answer入門通過ODBC & System.Data訪問數據。

相關問題