#207 フォームにWebページを表示するには? フォーム、VBA

ご存知のように、フォームをデザインするための部品として、Accessには、テキストボックスやラベル、コマンドボタンなど、たくさんの「コントロール」があります。しかし、Accessで使えるのはそれら標準のコントロールだけではありません。市販のコントロールもありますし、他のWindowsアプリケーションが提供してくれるコントロールもあります。いわゆる「ActiveXコントロール」と呼ばれているものです。
その中に、IE(Internet Explorer)が提供する「Webブラウザコントロール」があります。それを組み込むことによって、Accessのフォーム上にもWebページを表示させることができます。


このコントロールをフォームに挿入するには、次のような操作を行います。
  1. フォームのデザインを開きます。

  2. メニューより[挿入]-[ActiveX コントロール]を選択します。

  3. 「ActiveX コントロールの挿入」ダイアログが表示されたら、コントロールの一覧から"Microsoft Web Browser"を選択して、[OK]ボタンをクリックします。
    Microsoft Web Browser を選択

  4. これによって、フォームのデザインにWebブラウザコントロールが挿入されます。このコントロールの場合は、比較的大きめのサイズにして配置した方がよいでしょう。
    Webブラウザコントロールを配置したところ

このコントロールを実際に動作させ、指定したアドレスのWebページを表示させるには、VBAによる簡単なプログラミングが必要です。ここでは、"txtURL"という名前のテキストボックスを用意し、その内容が更新されたタイミングで、そこに入力されているページをフォームに表示させるようにします。それには、そのテキストボックスの"AfterUpdate/更新後処理"イベントプロシージャを次のようにします。
Private Sub txtURL_AfterUpdate()

  WebBrowser0.Navigate Me!txtURL

End Sub
"WebBrowser0"がWebブラウザコントロールの名前、"Navigate"が、その後ろに指定したURLを表示するWebブラウザコントロールのメソッドです。
このフォームを実行すると、次のようになります。

実行画面


他に、よく使われるWebブラウザコントロールのメソッドとしては、
  • [更新]ボタン→Refresh
  • [戻る]ボタン→GoBack
  • [進む]ボタン→GoForward
  • [ホーム]ボタン→GoHome
などがあります。
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved