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関連

    Word 2013では右クリックからBing検索できるようになりました。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  2. Office関連

    JPEG画像の回転情報を変更するVBAマクロ

    mougに「マクロでJPEG画像のExif(Orientation)を…

  3. Office関連

    マクロで実行したいコマンドのIDを調べる簡単な方法

    MSDN フォーラムに下記質問がありました。・Excel-VB…

  4. Office アドイン

    [Office用アプリ]開発に役立つ資料集

    第一回 Apps for Office 勉強会でも紹介した、Offic…

  5. Office関連

    [Office 365 Solo]日本語環境以外では使えるの?

    Office 365 Soloを使ってみて、疑問に思ったことの一つが“…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP