#438 ボタンのクリックで毎回異なるWebページを表示する方法 フォーム、VBA

ボタンをクリックしたら、あるテキストボックスに入力されているアドレスのWebページを表示させたいという場合、テキストボックスの内容が更新されたタイミングでコマンドボタンにハイパーリンク先を設定する方法でもよいのですが、クリック時イベントが発生したあと、ボタンのクリック時イベントプロシージャ内でハイパーリンク先を設定することもできます。すでにクリックされてしまっているので効果がなさそうに見えますが、この方法でもWebブラウザを起動させて所定のアドレスにアクセスすることができます。

次の例では、フォーム上の「txt住所」テキストボックスに住所を入力したあと、[地図表示]ボタンをクリックすると、Webブラウザが別ウィンドウとして自動起動し、その住所が「Google マップ」のサイトで検索され、Webブラウザ上に地図表示されます。

Private Sub cmd地図表示_Click()
'[地図表示]ボタンクリック時

  Dim strURL As String

  'テキストボックスから住所を取得してリンク先アドレスを組み立て
  strURL = "http://maps.google.co.jp/maps?q=" & Me!txt住所 & "&ie=SJIS"

  'このコマンドボタンにハイパーリンクアドレスを設定
  Me!cmd地図表示.HyperlinkAddress = strURL

End Sub


実行例:
住所をフォームに入力

Webブラウザが起動


また、Webブラウザコントロールを使って、自分自身のフォーム内に地図を表示させることもできます(「#207 フォームにWebページを表示するには?」参照)。

Private Sub cmd地図表示_Click()
'[地図表示]ボタンクリック時

  Dim strURL As String

  'テキストボックスから住所を取得してリンク先アドレスを組み立て
  strURL = "http://maps.google.co.jp/maps?q=" & Me!txt住所 & "&ie=SJIS"

  'Webブラウザコントロールにアドレスを設定
  Me!WebBrowser1.Navigate strURL
  
End Sub


実行例:
住所をフォームに入力

Webブラウザコントロールに地図表示
| Index | Prev | Next |



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