Excel2007を操作
PowerShellからExcelを起動し、以下のようにワークブックを追加してみたところ、
$app = New-Object -comobject Excel.Application $app.Visible = $True $book = $app.Workbooks.Add()
なぜかこんなエラーが・・・
"0" 個の引数を指定して "Add" を呼び出し中に例外が発生しました: "ライブラリの形式が古いか、または種類が無効です。 (HRESULT からの例外: 0x80028018 (TYPE_E_INVDATAREAD))"
発生場所 行:1 文字:27+ $book = $app.Workbooks.Add( <<<< )
ググってみたら、こんなのを発見。
どうやら、バグで以下のような回避方法があるようです。が、
$excel = New-object -com Excel.Application $ci = [System.Globalization.CultureInfo]'en-us' $excel.workbooks.psbase.gettype().InvokeMember("Add", [Reflection.BindingFlags]::InvokeMethod, $null, $excel.workbooks, $null, $ci)
ワークブック開く程度で、こんなの書きたくないですよ・・・