Office関連

PowerShellからNetOfficeを使ってWordやPowerPointを操作する方法

前回の記事関連で、

なんてことをツイートしたので、NetOfficeでWordやPowerPointを操作するコードも載せておきます。

NetOfficeでWordを操作するコード

Wordで新規文書を作成して、文頭に日付と時刻を挿入するコードです。

※ 要NetOffice.Word

[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\NetOffice.dll")
[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\OfficeApi.dll")
[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\WordApi.dll")
[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\VBIDEApi.dll")
$app = New-Object NetOffice.WordApi.Application
$app.Visible = $true
$doc = $app.Documents.Add()
$rng = $doc.Range(0,0)
$rng.InsertAfter((Get-Date).ToString("yyyy/MM/dd HH:mm:ss"))
$rng.Bold = $true
$rng.Font.ColorIndex = 5
$doc.SaveAs("C:\Test\Sample.docx")
$doc.Close()
$app.Quit()
$app.Dispose()

NetOfficeでPowerPointを操作するコード

PowerPointで新規プレゼンテーションを作成して、スライドを追加、追加したスライドにテキストボックスを挿入するコードです。

※ 要NetOffice.PowerPoint

[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\NetOffice.dll")
[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\OfficeApi.dll")
[void][Reflection.Assembly]::LoadFile("C:\System\NetOffice\PowerPointApi.dll")
$app = New-Object NetOffice.PowerPointApi.Application
$app.Visible = [NetOffice.OfficeApi.Enums.MsoTriState]::msoTrue
$pres = $app.Presentations.Add()
$sld = $pres.Slides.Add(1, [NetOffice.PowerPointApi.Enums.PpSlideLayout]::ppLayoutBlank)
$tbox = $sld.Shapes.AddTextbox([NetOffice.OfficeApi.Enums.MsoTextOrientation]::msoTextOrientationHorizontal, 100, 100, 300, 200)
$tbox.TextFrame2.TextRange.Text = (Get-Date).ToString("yyyy/MM/dd HH:mm:ss")
$tbox.TextFrame2.TextRange.Font.Size = 24
$pres.SaveAs("C:\Test\Sample.pptx")
$app.Quit()
$app.Dispose()

PowerShellからNetOfficeを使ってExcelを操作する方法前のページ

PowerShellからリボンUIを呼ぶ方法次のページ

関連記事

  1. Office関連

    [Excel Services ECMAScript]ループによる入力と一括入力の処理時間について

    埋め込んだExcelワークブックのセルに対して、ループで1セルずつ入力…

  2. Office関連

    VBAから扱えるDLLをC#で書いてみる。

    以前書いた記事でSharpDevelopを使ってExcel用のCOMア…

  3. Office関連

    図形の結合を行うPowerPoint マクロ(ExecuteMsoメソッド編)

    Excel MVPの伊藤さんのブログで、PowerPointの「図形の…

  4. Office関連

    Computer Vision APIを使って画像から文字列を取得するVBAマクロ

    前々回の記事で、Fiddlerを使ってMicrosoft Cognit…

  5. PowerShell

    [PowerShell]メール送信用関数

    本記事で使用しているSmtpClientは2018年現在非推奨となって…

  6. Excel

    選択範囲をOneNoteに送るVBAマクロ

    OneNote プリンタードライバー(プリンター)を使ってドキュメント…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP