2007でチェック
Excelの起動と終了
アセンブリを読み込んでExcelを起動するか,COMオブジェクトを作成します.
[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Interop.Excel") $excel = new-object "Microsoft.Office.Interop.Excel.ApplicationClass"
ウィンドウを表示する場合には,$excel.Visible = $trueとします.
$excel = new-object -comobject Excel.Application
終了するには,$excel.Quit()を実行します.
ワークブックの操作
ワークブックを作成または開くには次のスクリプトを実行します.ワークブックを閉じるときは,$workbook.Close()を実行します.
$workbook = $excel.Workbooks.Add() # 新しいワークブックの作成 $workbook = $excel.Workbooks.Open("Excelワークシートのパス") # ファイルを開く $workbook.Save() # 上書き保存 $workbook.SaveAs("Excelワークシートのパス") # 名前を付けて保存
シートの操作
まずシートを取得します.シートの番号で選択したり,アクティブなシートを取得したりできます.シートのセルにアクセスするには,次のようにします.
$sheet = $workbook.worksheets.Item(1) # 番号で $sheet = $workbook.ActiveSheet # アクティブな
$sheet.Cells.Item(1,2) = "B1だよ" $sheet.Range("A1", "A2").Value2 = "=`$B`$1"
参考
諸々の細かな部分はMSDNライブラリへGO!
この記事を作成するにあった見たのは,
- Windows PowerShell を使用して Microsoft Excel を自動化する方法はありますか
- Microsoft Visual C# .NET を使用して Microsoft Excel を自動化する方法
2010/10/28追記
上記の方法で起動したEXCELは,通常の方法(ショートカットを使うなど)で起動したEXCELとは別のウィンドウで開く.Visible
プロパティをtrue
にすれば,EXCELを2つ以上ののウィンドウで使いたい場合に役立つ.ただし,Quit
メソッドを呼び出さないとウィンドウは閉じていても終了しないので注意が必要.(Office 2010で確認)
2010/11/09追記
実行するとEXCELが開き,閉じると終了するサンプルスクリプト
$excel = new-object -comobject Excel.Application $excel.Visible = $true while ($excel.Visible) { Start-Sleep -s 3 } $excel.Quit()
0 件のコメント:
コメントを投稿