VBAで住所録からアイコンを立てるマップを作成してみた



The following two tabs change content below.
アバター

taka

あることがキッカケでVBAを独学で勉強しました、今ではブログを通してVBAでできることを解説しつつ、VBAや他の言語の勉強、ブログ運営の勉強をしています(^^♪

どうも、お久しぶりです、taka(@takabou63)です(^^♪

すっかりとご無沙汰してしまい申し訳ありません・・・

さて、今回は久しぶりの更新ということで少し張り切った内容になります(笑)

ずばり・・・Yahoo!APIを使用してマップを作成してみた話です(;^ω^)

前にも似たような事を「VBAでGooglemapを使わずに地図を作成(Yahoo!API)」でお話していますがこの時は1つの住所で1つの吹き出しという物でした。

VBAマップイメージ

VBAマップイメージ

ですが、できれば「住所録の住所からアイコンを立てたい」と思うものですよね?(笑)

私はそう思ったので作ってみました(^^)/

久しぶりのプログラムなので少しコードが汚く、苦戦もしてしまいました(;^ω^)

VBAでYahoo! JavaScriptマップAPI で複数のアイコンを立てる

前回と同じく下記のような流れで地図を表示させます

Yahoo!APIを使用したプログラムの関係図

Yahoo!APIを使用したプログラムの関係図

  1. 地図作成VBAファイル(ユーザーフォームも作成する) yhoomap.xlsm
  2. HTMLファイルを作成するためその元となるデータ  mapdate.txt
  3. Yahoo!APIキー【Yahoo!APIキーを取得はこちらから、取得方法は「VBA 郵便番号から住所を取得する方法」で紹介しています。】

この後、yhoomap.xlsmでHTMLファイルを作成しますがとりあえずはこの3つを用意します。

地図のHTMLファイルの元になるtxtファイルを用意する

まずは地図のHTMLの原型となるmapdate.txtを用意します。このファイルをVBAで読み込み、VBA内でHTMLに変換して出力します。

mapdate.txtは下記のように作成します。

地図表示するユーザーフォームを用意

続いて地図を表示する為のフォームを作成します。用意するのは下記のコントロールです(^.^)

今回は表内の住所録を使う予定で作成しましたので住所を記述するテキストボックスは用意しておりません。

コントロール役割
TextBox1YahooAPIキーを入力
CommandButton1実行ボタン
WebBrowser1Yahoo!から得た地図を表示する

地図を表示するコード

地図を作成するコードは以下のようにしました(*_*;

前回からさらに長くなってしまいましたが、何とか動作はしたました(;^ω^)

途中エラーが発生してしまい、理由の解明がなかなかできなかったのですが、とりあえず「On Error Resume Next」を使って強引にやり過ごすことにしました(;^ω^)

今回はB列に施設名、C列に住所を想定して作成しております、使用した住所のデータもダウンロードできるようにしておりますのでご自由にご使用ください(‘ω’)

最適化できたら随時更新します(;^ω^)

実際にコードを実行して見る

実際にコードを実行すると下記のようにアイコンが表示されるようになると思います(^^♪

クリックをすればセルに格納していた施設名を表示した吹き出しが表示されます(^^)/

ダウンロード

当サイトの免責事項をお読みになってからお使いください。

フォロー・チャンネル登録お願いします

■Twitterフォロー

■YouTubeチャンネル登録

ファイルやコードの利用、WEBサイトの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Sponsored Link

 

WordPressでブログを始めるなら

WordPress簡単インストール&安心の安定性

レンタルサーバー Xserver