Office関連

組み込み定数を列挙するVBAマクロ

定数の名前や値を調べたい、そんなときはTypeLib Information(tlbinf32.dll)を利用することで調べることができます。

Option Explicit

Public Sub Sample()
'TypeLib Information(tlbinf32.dll)要参照
  Dim ta As TLI.TLIApplication
  Dim ci As TLI.ConstantInfo
  Dim mi As TLI.MemberInfo
  
  Set ta = New TLI.TLIApplication
  With ta.TypeLibInfoFromFile("MSPPT.OLB")
    For Each ci In .Constants
      For Each mi In ci.Members
        Debug.Print ci.Name, mi.Name, mi.Value
      Next
    Next
  End With
End Sub

TypeLib_01_01

TypeLibInfoFromFileメソッドは引数にライブラリ(たとえばPowerPointの場合はMSPPT.OLBファイル)を指定します。

下記のようにクラス名を指定して調べることもできます。

Public Sub Sample2()
'TypeLib Information(tlbinf32.dll)要参照
  Dim ta As TLI.TLIApplication
  Dim mi As TLI.MemberInfo
  
  Set ta = New TLI.TLIApplication
  For Each mi In ta.TypeLibInfoFromFile("MSPPT.OLB") _
                   .Constants.NamedItem("PpSlideLayout").Members
    Debug.Print mi.Name, mi.Value
  Next
End Sub

OLE/COM Object Viewerを使うと簡単に一覧表示できるので、TypeLib Informationを利用したマクロを使う機会もなかなか無いかもしれませんが、“オブジェクト ブラウザで表示されるクラスのメンバーを書き出したい”、なんてときは役立つかもしれません。

TypeLib_01_02

■ 関連Webページ

Microsoftのサポートページに載っているファイルがリンク切れを起こしているときは?前のページ

EvernoteのノートをXML形式で保存するVBAマクロ次のページ

関連記事

  1. Office関連

    代替テキストを削除するPowerPointマクロ

    PowerPointの図やSmartArt、グループやグラフといった視…

  2. Office アドイン

    Excel向けPower BI カスタム ビジュアル機能の紹介

    Power BI ブログの記事「Excel announces new…

  3. Office関連

    スライド内容を自動的に機械翻訳するPowerPointマクロ

    前回の記事で紹介した各スライドに配置されたオートシェイプからテキストを…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP