Office関連

「NetOffice」で簡単に.NETからOfficeを操作

ネットで「NetOffice」なるツールがあることを知ったので、早速試してみました。
CodePlexのページによると、Microsoft Office製品にアクセスするための.NETラッパーアセンブリのようで、Officeのバージョンに関係なく簡単にコードが書けるとのこと。

ツール本体のダウンロードは上記ページの「download」リンクから行えますが、今回はプロジェクトウィザード等の開発支援機能が充実している「Developer Toolbox」を使ってサンプルアプリケーションを作成してみました。

下記ダウンロードページから「NetOffice Developer Toolbox 1.1.rar」ファイルをダウンロードして適当なフォルダに解凍します。

・NetOffice – MS Office in .NET – Download: NetOffice Release 1.4.1
http://netoffice.codeplex.com/releases/view/70943

出力された「NetOffice.DeveloperToolbox.exe」ファイルを実行し、「VS Project Wizard」タブからプロジェクトウィザードを実行します。

ウィザードの指示に従って進めていくと、最後にプロジェクトが作成されます。

作成されたプロジェクトをひな型として書いたコードが下記の通りです。

・Form1.vb

Imports NetOffice
Imports Word = NetOffice.WordApi
Imports NetOffice.WordApi.Enums
Imports Office = NetOffice.OfficeApi
Imports NetOffice.OfficeApi.Enums
Imports VBIDE = NetOffice.VBIDEApi
Imports NetOffice.VBIDEApi.Enums

Public Class Form1

    Public Sub New()
        InitializeComponent()
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim appWord As New Word.Application
        Dim docNew As Word.Document = appWord.Documents.Add()

        docNew.Range(0, 0).InsertAfter("Hello.")
        appWord.Visible = True
        MsgBox("Wordを終了します。")
        appWord.Quit(WdSaveOptions.wdDoNotSaveChanges)
        appWord.Dispose()
    End Sub
End Class

Wordを操作して新規文書を追加後に文章入力、最後に文書を閉じるという簡単なプログラムですが、ビルドして実行したところ問題無く動作しました(Word 2013 CP)。

.NETからのOfficeオートメーションは後始末がかなり面倒臭かった印象があるのですが、どうやらそこら辺をNetOfficeが上手く処理してくれているようで(詳しく調べていないのでNetOfficeがどう処理しているかは私の方では未確認です)、文書を閉じた後にWordのプロセスが残ったままになる、といったこともありませんでした。
リボンをカスタマイズしたCOMアドインの作成も試してみましたが、こちらも特に問題無く、非常に簡単な手順で作成することができました。

ほんの少ししか触っていないのですが、”かなりお手軽でかなり便利なツール“という印象です。
Officeオートメーションで困った経験をお持ちの方、一度試してみてはいかがでしょうか?

ちなみに、NetOffice Developer Toolboxで作成したプロジェクトファイルをSharpDevelop 3.2でビルドしたところ、COMアドインとして問題無く動作しました。

Wordマクロで文字数を取得する方法をまとめてみました。前のページ

Office付属のVBEでVBScriptコードを書くのを助けるVBScript次のページ

関連記事

  1. Office関連

    Office製品の開発者用リファレンス(ダウンロード版)

    Docs.comでまとめていたリンクなんですが、来月15日にすべて廃止…

  2. Office関連

    「Excel VBAでラクラク Win64 APIプログラミング」(大村あつし著)レビュー

    当ブログでも以前書評を書いた「Excel VBAの神様 ボクの人生を変…

  3. Office関連

    Custom UI Editorの最新版がGitHubで公開されました。

    下記記事等で紹介している、リボンUIをカスタマイズするためのツール「C…

  4. Office関連

    PHPWordを使ってPHPからWordファイルを出力してみる。

    最近オトカドールやルミティアジュエルやらの記事ばかり書いていますが、今…

  5. Office関連

    Office製品のフィードバック先まとめ

    WordやExcel等のOffice製品を使っていて、「UIのこの日本…

  6. Office関連

    [Excel]XLOOKUP関数でより簡単に値を検索できるようになりました!

    下記記事の通り、2019年8月末にVLOOKUP関数やHLOOKUP関…

コメント

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

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP