Google elevation lekérdezés VBA

Google elevation lekérdezés VBA
2018-03-09T07:57:58+01:00
2018-03-13T08:25:30+01:00
2022-10-15T21:40:35+02:00
MadBob_HUN
Sziasztok!

Az alábbi függvény segítségével szeretném lekérdezni a tengerszint feletti magasságot egy koordinátáról (00.0000,00.0000 formátumban kell megadni, de nem kapok értékelhető eredményt. Pedig ha összerakom az url-t és böngészőben nézem meg akkor ott az adat.

A függvény:

Function G_ELEVATION(LatLng As String) As Double ' Requires a reference to Microsoft XML, v3.0 or greater Dim myRequest As XMLHTTP60 Dim myDomDoc As DOMDocument60 Dim ElevationNode As IXMLDOMNode G_ELEVATION = 0 ' Check and clean inputs On Error GoTo exitRoute ' Read the XML data from the Google Maps API Set myRequest = New XMLHTTP60 myRequest.Open "GET", "http://maps.googleapis.com/maps/api/elevation/xml?" _ & "&locations=" & LatLng & "&sensor=false", False ' Make the XML readable usign XPath Set myDomDoc = New DOMDocument60 myDomDoc.LoadXML myRequest.responseText ' Get the elevation node value Set ElevationNode = myDomDoc.SelectSingleNode("//result/elevation") If Not ElevationNode Is Nothing Then G_ELEVATION = ElevationNode.Text exitRoute: ' Tidy up Set ElevationNode = Nothing Set myDomDoc = Nothing Set myRequest = Nothing End Function


Tudja valaki miért?
Mutasd a teljes hozzászólást!
Szia!

Az okozza a hibát, hogy eltérő a tizedesjelünk - nem pont, hanem vessző -, viszont a lekérdezés előbbit hozza eredményül, így azt nem tudja double típusként eredményül adni.

Function G_ELEVATION(LatLng As String) As Double
Szóval vagy törlöd az első sor végéről az as double-t, vagy az ElevationNode.Text elé teszel egy replace-t. Én az utóbbit csináltam, parancsolj:
Mutasd a teljes hozzászólást!
Csatolt állomány

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd