Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: API_KEY en Google Maps  (gelezen 2807 keer)

0 leden en 1 gast bekijken dit topic.

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
API_KEY en Google Maps
« Gepost op: 12 maart 2018, 14:09:14 »
Dag Oplossers,

Een API_KEY heb ik ondertussen al die zijn werk doet op basis van het adres de longitude en latitude te bekomen alsook evelation.

Mijn vraag is dan het volgende: hoe kan ik in formulier de coördinaten meegeven dat gelinkt is aan OLE object als ik mij niet vergis om in het kaartje de visuele weergave van de locatie te zien? Mijn projectje heb ik gemaakt in office 2016 Acces. De bedoeling van het projectje is om mijn POI gegevens van mijn wandelingen op te slaan om die dan te kunnen gebruiken voor mijn outdoor wandel GPS. Op zich is dit laatste geen probleem. Wil om het af te krijgen de visuele weergave zien in een ingesloten OLE object, webbrowser denk ik, om de locatie op het kaartje te zien te krijgen.

Iemand hier enige ervaring in?

Vriendelijke groeten,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

Offline dizzl

  • Ambassadeur
  • *****
  • Berichten: 2.345
  • I've Upped my standards,now,up yours!
Re: API_KEY en Google Maps
« Reactie #1 Gepost op: 15 maart 2018, 06:35:14 »
Misschien helpt deze link je vooruit?
Systeem  : Intel Core i5-4440 3.1Ghz, 3.1GHz 16Giga Ram 64Bits
Software : Windows 10 professional, Avira, Office 2016 Professional

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
Re: API_KEY en Google Maps
« Reactie #2 Gepost op: 15 maart 2018, 12:15:22 »
Dag Dizzl,

Alvast bedankt om te reageren met een mogelijke oplossing. heb paar dagen geleden een voorlopige oplossing bedacht om een string manupilatie te doen. Het is naar het voorbeeld van wat je in gedachten had.

Private Sub Knop14_Click()
'Code geschreven door diezel woensdag 14 maart 2018 3:07
On Error GoTo Einde
Dim WshShell As Variant
Dim Adres As String

Adres = txtAdres
Adres = Replace(Adres, ",", " ")
Adres = Replace(Adres, " ", "+")

   Set WshShell = CreateObject("WScript.Shell")
   'WshShell.Run "https://www.google.be/maps/place/" & Adres & "/@" & txtLatLon & "," & "17z/"
WshShell.Run "https://www.google.be/maps/place/" & Replace(txtDegree, ", ", "+") & "/@" & Replace(txtLatitude, ",", ".") & "," & Replace(txtLongitude, ",", ".") & ",19z/"

Exit Sub

Einde:
Dim Y As String
Y = "https://about:blank/"
Application.FollowHyperlink Y
Exit Sub

End Sub


Website van het voorbeeld: https://www.experts-exchange.com/questions/28949079/Google-Maps-in-MS-Access.html

Ik heb op een website een voorbeeldje gevonden van een ingebed voorbeeldje in formulier. Het is verouderd waardoor de kaart niet snel geladen wordt. Heb een voorbeeldje gepost.

Vriendelijke groeten,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
Re: API_KEY en Google Maps
« Reactie #3 Gepost op: 16 maart 2018, 09:30:51 »
Dizzl en medeoplossers,

In bing zou het mogelijk zijn als onderstaande java code kan omgezet worden naar vba.
Jammer genoeg heb ik de competentie niet om java te kunnen converteren naar vba.

function encodePoints(points) {
    var latitude = 0;
    var longitude = 0;
    var result = [];
    var l;

    for (var point in points ) {

        // step 2
        var newLatitude = Math.round(points[point][0] * 100000);
        var newLongitude = Math.round(points[point][1] * 100000);

        // step 3
        var dy = newLatitude - latitude;
        var dx = newLongitude - longitude;
        latitude = newLatitude;
        longitude = newLongitude;

        // step 4 and 5
        dy = (dy << 1) ^ (dy >> 31);
        dx = (dx << 1) ^ (dx >> 31);

        // step 6
        var index = ((dy + dx) * (dy + dx + 1) / 2) + dy;

        while (index > 0) {

            // step 7
            var rem = index & 31;
            index = (index - rem) / 32;

            // step 8
            if (index > 0) rem += 32;

            // step 9
            result.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-"[rem]);
        }
    }

    // step 10
    return result.join("");
}

Met onderstaande code vraag ik op basis van het adres,  de Latitude en Longitude op. Dit kan met een BingMapsKey.

Function GeocodeAddress(address As String, BingMapsKey As String) As String
Dim oHttpReq As Object
'Set oHttpReq = CreateObject("MSXML2.XMLHTTP60")'failed
Set oHttpReq = CreateObject("MSXML2.XMLHTTP.6.0")
oHttpReq.Open "get", "https://dev.virtualearth.net/REST/v1/Locations?q=" & address & "&o=xml&key=" & BingMapsKey, False
oHttpReq.send
If oHttpReq.ReadyState = 4 Then
  oHttpReq.responseXML.SetProperty "SelectionNamespaces", "xmlns:xsi='https://schemas.microsoft.com/search/local/ws/rest/v1'"
  GeocodeAddress = oHttpReq.responseXML.selectSingleNode("//xsi:GeocodePoint/xsi:Latitude").Text & "," & oHttpReq.responseXML.selectSingleNode("//xsi:GeocodePoint/xsi:Longitude").Text
End If
End Function


Vriendelijke groeten,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

 


www.combell.com