MS PowerpointのVBAからMuleを利用する

  1. 自分で開発したMS Powerpoint VBAからMuleを利用する場合はMuleから提供するVBAクラスを利用します。
    このチュートリアルではMuleクラスの取り込みとそのクラスを利用する簡単なVBAを作成します。
    新規にMS Powerpointのブックを作成して、VBAエディタを開きます。
    VBAエディタを開くにはメニューからツール − マクロ − Visual Basic Editorを選択します。
  2. VBAエディタが開いたら例題プログラムを作成するための標準モジュールを作成します。
    標準モジュールを作成するには、メニューから挿入 − 標準モジュールを選択します。
  3. Muleクラスと関連モジュールを読み込みます。
    メニューからツール − 参照設定を選択します。
  4. MuleクラスはデータをXML文書として返すので、XMLパーサを読み込みます。
    XMLパーサを読み込むには、参照可能なライブラリ ファイルMicrosoft XML,v4.0をチェックします。(Microsoft XML,v5.0がある場合はそれをチェックします。)
  5. Muleクラスを読み込みます。
    MuleクラスはMS Powerpointのアドインとして提供されていますので、参照ボタンを選択します。
  6. Muleを解凍したフォルダ下のclient\jp\MSOfficeフォルダへ移動して、ファイルの種類をPowerPoint Addin Files (*.ppa)を選択します。
  7. ファイルclsMenu.ppaを選択して、開くボタンを選択します。
  8. MuleClassProviderがチェックされたことを確認した後にOKボタンを選択します。
  9. Muleクラスを利用する例題プログラムを入力します。
    Private Sub test()
      ' クラスの初期化
      Dim mule As MuleClassProvider.clsMule        // Muleクラスを宣言
      Set mule = MuleClassProvider.New_clsMule     // Muleクラスを作成
      
      ' Muleの設定
      mule.uri = "http://localhost:81/services/syainUMO?method=getList"  ' WebServiceのURIを設定
      mule.user = "sa"                                                   ' ユーザ名を設定
      mule.password = ""                                                 ' パスワードを設定
      mule.key = "12345                                                  ' 検索キーを設定
      
      ' データの取得
      Dim xmlDoc As MSXML2.DOMDocument                                   ' データを受け取るXML文書を宣言
      
      Set xmlDoc = mule.GetData                                          ' データを取得
      If (xmlDoc Is Nothing) Then                                        ' 内容があるか確認
        MsgBox "error code:" & mule.errCode & " " & mule.errMsg          ' ない場合はエラーコード
      Else                                                               '     をメッセージを表示
        MsgBox xmlDoc.xml                                                ' ある場合は内容を表示
      End If
    End Sub
    
    ダウンロード:test.txt
  10. 例題プログラムを実行した、Muleからデータを取得します。
    プログラムを実行するにはメニューから実行 − Sub/ユーザーフォームの実行を選択します。
  11. Muleさーばが起動されていない場合は以下のようなダイアログが表示します。
    この場合はMuleサーバを起動してください。
  12. 正常にデータを取得した場合は以下のようなダイアログが表示します。
    XML文書のルートノード名はreplyです。
    各行はrowタグに収められています。


もとのページに戻る