OXY NOTES

Excelの住所録を使ってGoogleMapのマイマップを制作する方法

大量の住所をGoogleMapに落としこむ方法を解説します

友人と目的地を共有したり、お気に入りのショップを掲載したりと、使い方が広がる便利なGoogleMap。しかし目的地をひとつひとつ追加するのは意外に大変です。

そこで今回は、エクセルの住所録をGoogleMapに追加する方法を紹介します。


制作手順

1.住所録の作成

まず以下のフォーマットで、エクセルの住所録を作ります。
必要な項目は
name」場所の名前
address」住所(東京都新宿区西新宿2-8-1など。半角英数が好ましい)
lat」緯度(後で自動取得するため空欄でかまいません)
lon」経度(後で自動取得するため空欄でかまいません)
description」場所の説明(住所、電話番号、営業時間)など。GoogleMapで「説明」に該当する項目で「<a harf=」などのHTMLも使えます。

2.CSV形式で保存

上記の形式で編集が終わったら「CSV形式(カンマ区切り)」で保存。

3.「AGtoKML」をダウンロード

続いて住所の情報から座標を取得してくれる「AGtoKML」をダウンロードします。
右上の「最新版(Full)ダウンロード」をクリック。
(2013年12月現在、最新バージョンはV.0.0.7.1になっています。この記事の画像は過去のバージョンのため、ご注意ください。)

4.AG2KML.exeに取り込み

ダウンロードしたファイルを解凍して「AG2KML.exe」を実行。上のメニューから「Open csv File」のアイコンをクリック、先ほど保存したCSVファイルを読み込む。

5.座標の自動取得

右下の「GeoCoding」にある「すべての住所」をクリック。すると住所の情報からLat(経緯)とLon(緯度)を自動で取得することができます。

注意

座標の自動取得ですが、万能ではありません。
まれに実際の場所とMAPの表示が違う場合があります。特に新しく合併した市町村や、統廃合された番地などは、ずれることがあります。

その際は「Mapを表示」にチェックを入れてください。すると地図が表示されるので、項目の行を選んで地図にあるマーカーの位置を調整します。

また大量にリストがある場合は、一度で自動取得できません。住所が正しければ、何度も繰り返し「自動取得ボタン」を押せば取得できます。気長にぽちぽち押しましょう。

6.kmlファイルの書き出し

座標に関する編集が終わったら、右上にある「Google Earthに出力」をクリック。
GoogleMapで読み込めるkml形式でファイルを書き出します。
(ファイルはAG2KML.exeのフォルダにある「AGtemp > temp」に書き出されています)

7.kmlファイルの修正

書きだされたkmlファイルは現在のGoogleMapに対応していないので、修正します。(秀丸など、テキストエディタで開いて編集してください)
ファイルの先頭、

<?xml version="1.0" encoding="utf-8"?>
<kml>

となっている部分を

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">

に変更。文字コードが「UTF-8」、改行コードが「CR+LF」であることを確認してファイルを保存してください。

8.グーグルマップへアップロード

Googleマイマップを開き「マイプレイス > 編集ボタン、もしくは新規作成 > インポート」という順序で、クリック。
新しく出たウィンドウで先程保存したkmlファイルをアップロードします。

 
以上でエクセルで作った住所録をGoogleマイマップに書き出せました。
 
以下サンプルです。

また一連の流れで制作した「アクアリウムWikiマップ」もご覧ください。
 


補足

AG2KML.exeではデフォルトでマークが黄色いピンになっています。
変更したい場合は、kmlファイルにある

http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png

という表記の部分を対応するピンのアドレスに変更してください。

ブルーのピンが良ければ以下のようにします。

http://maps.gstatic.com/mapfiles/ms2/micons/blue-dot.png

こちらに「GoogleMAPで使用されている基本のアイコンをまとめたページ」がありました。参考にどうぞ。

気に入ったアイコンのURLを、秀丸エディタの置換機能などを使って、一括変換すれば手間なしです。
(自分で用意した画像をマークに使うこともできます。)


補足2「GoogleMapで地図上の座標を取得する方法」

自動取得で座標が取得できない場合、GoogleMapで経度と緯度を調べます。

GoogleMapで経度と緯度を調べるには、調べたい座標にマウスを合わせて、右クリック。「この場所について」を選ぶと、上の検索ボックスに経度と緯度が表示されます。

(ちなみに、はじめに出る35…というのが緯度、139…というのが経度です)


補足3

今まではエクセルで作った住所録をCSV形式にしてグーグルマップに取り込みましたが、逆にGoogleMapのkmlデータをCSV形式(カンマ区切り)に変換することもできます。
GoogleMap上で共同編集をして、変更点を自分のエクセルデータに統合したい。ということもあると思います。

1.マイマップのkmlファイル(テキストリンクの方)を保存。

 
2.テキストエディタでデータをコピーして、「こちらのページ」でCSV変換にできます。

書式が少し違いますが、そのへんはエクセルの機能で並べ替えます。


補足4

Google Mapsにログインした状態だと、一度に編集画面に表示できるマーカーの数は200件までです。
200件以上マーカーを設定した場合、下の画像にあるように次のページへのリンクが表示されます。

1つのマップに200件以上表示するには、一度ログアウトして作成したマップのURLを表示する必要があります。

上の画像と比べると表示されているマーカーの数が多くなっているのがわかると思います。


以上でエクセルで作った住所録を使って、GoogleMapのマイマップを制作する方法は終了です。
Excelから一発で変換できるソフトがあれば便利なんですが、そんな便利なツールをご存知の方がいたら、コメントにお願いします。