をいただければ幸いです。 Googleには、APIの使用に関するいくつかのライセンス要件/制限があることを認識してください。ここで得られた結果をGoogleマップで使用することになっています。 https://developers.google.com/maps/documentation/directions/
レイトバインディングを使用するようにコードを変更しない限り、これには「Microsoft XML、v6.0」への参照が必要です。
Dim sXMLURL As String
sXMLURL = "http://maps.googleapis.com/maps/api/directions/xml?origin=NY,+NY&destination=Los+Angeles,+CA&sensor=false"
Dim objXMLHTTP As MSXML2.ServerXMLHTTP
Set objXMLHTTP = New MSXML2.ServerXMLHTTP
With objXMLHTTP
.Open "GET", sXMLURL, False
.setRequestHeader "Content-Type", "application/x-www-form-URLEncoded"
.Send
End With
'Debug.Print objXMLHTTP.ResponseText
Dim domResponse as DOMDocument60
Set domResponse = New DOMDocument60
domResponse.loadXML objXMLHTTP.ResponseText
Dim ixnStatus
Set ixnStatus = domResponse.selectSingleNode("//status")
If ixnStatus.Text = "OK" Then
Dim ixnDistance, ixnDuration
Set ixnDistance = domResponse.selectSingleNode("/DirectionsResponse/route/leg/distance/text")
Set ixnDuration = domResponse.selectSingleNode("/DirectionsResponse/route/leg/duration/text")
Debug.Print "Distance: " & ixnDistance.Text 'Miles
Debug.Print "Duration: " & ixnDuration.Text 'Days Hours Minutes
End If
Set domResponse = Nothing
Set objXMLHTTP = Nothing
私は意図的にVBAをJSONで過度に便利ではありませんので、代わりにJSONのXMLを使用することを選択した、とI.はあなたが頻繁にダウンロードできるモジュールはあり午前どちらがVBJSONと呼ばれるが、それは少し学習を持っています特に以前はJSONで作業したことがない場合は、私は、XMLがより「高価」(効率的ではない)だと考えていますが、Access VBAで作業する方が簡単だと思います。
出典
2012-04-12 16:55:40
HK1
sMapURLはアーティファクトでした。 :)私はそれを削除しました。 – HK1