アクセスでGoogleマップ Ver 2
Accessのフォーム上にWebブラウザコントロールを使ってGoogleマップを表示し、テーブルに保存された住所にマーカー(赤い旗)を立てる、Microsoft
Access 2010用のサンプルデータベースです。Access2010から標準コントロールとなったWebブラウザコントロールの使い勝手を見てみようと思って作ってみました。
本データベースはフリーウェアです。自由にお使いください。デザインやVBAのソースもいじれますので、自由にカスタマイズして使っていただいてかまいません(エラー処理なども完全ではないかもしれませんのでむしろアレンジしないと本格的には使えないかもしれませんね)。ただし、サポートは一切できかねますので、ご自分の責任においてご利用ください。
。
特 徴
- Accessのテーブルに、場所の名前と住所を登録しておくことで、Googleマップのそれぞれの位置にマーカーを表示します
- マップ上のマーカーをクリックすると、場所の名前と住所をポップアップウィンドウで表示します
- マップの中心位置となる住所や初期縮尺サイズをフォーム上で指定できます
- マップの表示にはAccess 2010の標準コントロールであるWebブラウザコントロールを使っています
- GoogleマップのAPI、スタイルシートなどを活用し、既定のindex.htmlファイルを変えることで、より高度な地図表示にすることもできます
画面イメージ
クリックで拡大表示
処理の概要
- Accessのテーブル上に、場所の名前と住所(都道府県から)のデータを保存しておきます。
- フォーム読み込み時、あるいは[前の10件]・[次の10件]等のボタンのクリック時イベントプロシージャのVBAの処理によって、10件分のマーカーの位置情報などをmapdata.jsファイルに出力します。
- index.htmlファイルでは、そのmapdata.jsを外部スクリプトのソースとして読み込みます。
- フォーム上に配置されたWebブラウザコントロールの「コントロールソース」プロパティにはそのindex.htmlファイルのパスが指定されていますので、その内容が読み込まれ、WebブラウザコントロールにHTML上で記述されたGoogleマップが表示されます。
- テーブルのデータはサブフォームに表示されていますので、そこで編集することができます。編集後、いずれかのボタンをクリックすると最新情報がmapdata.jsファイルに出力され、マップの内容が更新されます。
mapdata.jsファイルの内容(一例)
index.htmlファイルの内容
フォームモジュールの内容
使い方
本データベースはAccess2010の通常のデータベースです。これといったセットアップ作業は必要ありません。下記のような要領でご使用ください。
- 本データベースの配布ファイル(.ZIP)を解凍し、データベースファイル「AccGoogleMap.accdb」と、「mapdata.js」、「index.html」を任意の”同じフォルダ”に置きます。
- Access2010を起動し、本データベースファイルを開きます。
- 起動時の設定によって、初期画面が自動的に表示されます。
- サンプルデータがいくつか登録されていますので、適当に操作してみてください。また、住所等のデータを画面上から書き換えるなどしてみてください。
- F11キーを押すなどの操作によってナビゲーションウィンドウを表示して、あとは自由にフォームのデザインやプログラムなどを確認してみてください。もちろん改変や流用等は自由にできます。
Ver1からの変更点
- 「Google Maps JavaScript API バージョン 3(V3)」に対応しました。
- 「マップ中心住所」および「マップ縮尺」変更時にもマップ内容が更新されるようにしました。
動作環境
本データベースをご利用になるには、Access2010が必要です(Access2007については動作確認しておりません、2003以前のバージョンではファイルを開けません)。
また、1024×768ピクセル以上の解像度のディスプレイにおいて、ナビゲーションウィンドウを閉じた状態での大きさでフォームをデザインしています。
ダウンロード
ダウンロード (ACCGMAP2.ZIP、40,022バイトあります)
|