Office関連

OneNoteのノート名を列挙するマクロ

今回はOneNoteのノート名を列挙するマクロを紹介します。

Option Explicit

Public Sub Sample()
'OneNoteのノート名を列挙する

'GetHierarchyメソッドの第2引数:hsScopeで指定する値は下記の通り
'  hsSelf:0
'  hsChildren:1
'  hsNotebooks:2
'  hsSections:3
'  hsPages:4

  Dim x As String
  Dim elm As Object
  
  CreateObject("OneNote.Application").GetHierarchy vbNullString, 2, x
  With CreateObject("Msxml2.DOMDocument")
    .async = False
    If .LoadXML(x) Then
      For Each elm In .SelectNodes("/one:Notebooks/one:Notebook")
        Debug.Print elm.getAttribute("name")
      Next
    End If
  End With
End Sub

最初はApplicationオブジェクト > Notebooksオブジェクト > Notebookオブジェクト、のような形になっているのかと思っていましたが、実際は違っていました。
ノートやセクションの情報を得るには、GetHierarchyメソッドで階層構造をXMLとして取得し、ノードを列挙していけば良いようです。

・Office 2010 の開発者のための新機能 – OneNote 2010
http://msdn.microsoft.com/ja-jp/library/ff955606.aspx#odc_office14_ta_WhatsNewforOffice2010Developers_OneNote2010

MayhemのOfficeModulesが更新されました。前のページ

OneNoteの指定したセクションをページごとに指定した形式で出力するマクロ次のページ

関連記事

  1. Office アドイン

    office-toolboxを使って簡単にOffice アドインを作成する方法

    以前「YO OFFICE」を使ってOffice アドインのひな型を作成…

  2. Office関連

    Office XP Developer Toolsでリボン対応のCOMアドインを作成する。

    「Visual Basic 6でリボン対応のアドインを作成する」ではV…

  3. Office アドイン

    [Office用アプリ]画像を挿入する。

    DocumentオブジェクトのsetSelectedDataAsync…

  4. アイコン一覧

    Office 365アイコン(imageMso)一覧(P)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  5. Windows 10

    【2017年1月版】Microsoft Edgeを操作するVBAマクロ(DOM編)

    「Microsoft Edge VBA 操作」こういったキーワード検索…

  6. Office関連

    Office365APIEditorでMicrosoft Graph APIを手軽に呼び出し!

    下記Tech Communityの記事で、Microsoftのエンジニ…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

PAGE TOP