緯度経度取得できました。
忘却の達人さんのJSONテキストを使う方法では、上手く動かすことが出来ず、マイナビニュースのExcel VBAでWebサービス - ExcelでGoogleマップを表示しようの記述を基にVBAの参照設定を行って、下記のスクリプトに省略して緯度経度データを取得できました。
-----------------------------------------------
Public Function AddressToLatLng(address As String)
Dim xhr As New MSXML2.XMLHTTP
Dim tmp As New MSXML2.DOMDocument
Dim geo As MSXML2.IXMLDOMNodeList
Dim loc As MSXML2.IXMLDOMNode
Dim addr As String
Dim url As String
Dim js As Object
Set js = CreateObject("ScriptControl")
js.Language = "JScript"
addr = js.CodeObject.encodeURIComponent(address)
If addr = "undefined" Then Set js = Nothing: Exit Function
Set js = Nothing
'(1)URLエンコードした住所から、ジオコーディングのリクエストを送信する
url = "http://maps.google.com/maps/api/geocode/xml?sensor=false&address=" & addr
xhr.Open "POST", url, False
xhr.send
If xhr.statusText <> "OK" Then Exit Function
'(2)レスポンスから緯度・経度を取り出し、Sheet2の該当セルに設定する
tmp.loadXML (xhr.responseText)
Set geo = tmp.getElementsByTagName("geometry")
Set loc = geo(0).firstChild
Set xhr = Nothing
AddressToLatLng = loc.firstChild.Text & " " & loc.lastChild.Text
End Function
---------------------------------------------------
APIキーを使用せずに動いているのが謎ですが、結果が得られているので深く考えないことにします。
あのこらの出張エリアが表示されていなかった不具合も解消しました。
2019.09.23訂正
APIキーはやはり必要でした。
昨日は、制限なしのAPIキーを取得していたのですが、不要だと思ってキーを削除したら、動かなくなりました。
« 住所表記の揺れ対策 | トップページ | モペッドの修理をお断りしました。 »
「Access 業務管理」カテゴリの記事
- お客様宅の緯度経度情報(2018.07.24)
- モジュールとメインフロー(2018.03.01)
- 受注情報の登録パターン(2017.10.11)
- 懸案は解決しましたが、PCが不調です。(2017.10.08)
- コンボボックスのリスト外入力からの振り仮名取得(2017.10.07)
コメント