我想在Powershell 1.0中自動化Excel,並且在嘗試應用單元格「Font.ColorIndex」屬性時遇到問題。Powershell 1.0 Excel自動化 - 問題與「Font.ColorIndex」
以下Microsoft KB文章詳細介紹了用Excel自動化BUG時運行該腳本的計算機有一個區域以外的設置「EN-US」
我在下面的示例腳本完美的作品時,我手動更改我的語言環境和區域設置到「EN-US」,並未能在設置爲「en-GB」只有當最後一行
$Excel = New-object -com Excel.Application
$culture = [System.Globalization.CultureInfo]'en-us'
$Book = $Excel.Workbooks.psbase.gettype().InvokeMember("Add",
[Reflection.BindingFlags]::InvokeMethod,
$null, $Excel.Workbooks, $null, $culture)
$Sheet = $Book.Worksheets.Item(1)
$Excel.Visible = $True
$Sheet.Cells.Item(1,1).FormulaLocal = "test"
$Sheet.Cells.Item(1,1).Font.ColorIndex = 3
如前所述,如果我的區域設置爲「en-GB」腳本運行正常,直到最後在線失敗的地方:
無法在此對象上找到'ColorIndex'屬性;確保它存在並可設置。 At:line:10 char:29 + $ Sheet.Cells.Item(1,1).Font。 < < < < ColorIndex = 3
沒有人有任何想法如何(不是設置「美恩」當然!我的語言環境等)
感謝 馬克
謝謝基思但我一直無法得到這工作,並看到其他人認爲這並沒有爲他們工作的評論。 – Mark
您是否嘗試在Using-Culture功能中運行所有Excel腳本?我已經使用這個函數來測試PowerShell 2.0中的本地化數據部分,所以我知道「一般來說」它可以工作。雖然也許不適用於Excel。 –
是在該功能內嘗試的。我同意「總的來說」它確實起作用,然而它是正確的解決方案,而不是用excel。我認爲最好的解決方案是編寫HTML輸出並保存爲.xls格式?還不確定,但會去玩它。感謝您的努力 – Mark