Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Access + Mappoint + Luftlinie berechnen
zurück: Garmin-Excel-Mappoint weiter: Importprobleme von 2004 zu 2011 MapPoint Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Offen Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Sebastian_HH
Gast


Verfasst am:
16. Nov 2006, 23:36
Rufname:

Access + Mappoint + Luftlinie berechnen - Access + Mappoint + Luftlinie berechnen

Nach oben
       

Hallo Leute,

ich bin neu hier und habe ein für mich unlösbares Anliegen:

Ich habe ca. 5.000 Adressdatensätze von Wohnungen und ca. 300 Adressdatensätze von Schulen. Mich interessiert nun die Entfernung (Luftlinie) von jeder Wohnung zur nächstgelegenen Schule. Ein Bekannter, den ich nicht schon wieder mit meiner Unwissenheit belästigen möchte, hat mir unten stehenes schon mal in VBA programmiert. Und zwar handelt es sich dort um die Distanz mit dem Auto. Bei den Datenmengen dauert die Berechnung jedoch sehr lange. Die Luftlinienentfernung sollte weniger rechenintensiv sein. Doch wie geht das?

Hier also die Berechnung der Distanz mit dem Auto. Anmerkung: In der Access-Tabelle "Startorte_leer" sind die Wohnungsadressen hinterlegt. Als Ziel wurde hier eine Beispieladresse angegeben:
Code:
Public Function doRouting()
On Error GoTo tnsExit
    Dim objApp As New MapPoint.Application
    Dim objMap As MapPoint.Map
    Dim objRoute As MapPoint.Route
    Dim rs As New ADODB.Recordset
    Dim sTemp As String
    Dim sSql As String
    Dim sStart As String
    Dim sEnd As String
   
    'Anwendung einrichten
    Set objMap = objApp.ActiveMap
    Set objRoute = objMap.ActiveRoute
    objApp.Visible = False
    objApp.UserControl = False
    'Ziel setzen
    sEnd = "Glockengießerwall 1, Hamburg, Hamburg, 20095, Deutschland"
    sSql = "SELECT * FROM Startorte_leer WHERE id > 0"
    rs.Open sSql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
    Do While Not rs.EOF And Not rs.BOF
        'Startort setzen
        sStart = rs!sStreet & ", " & rs!sRegion & ", " & rs!sPostcode & _
                 ", " & rs!sCountry
        'sStart = rs!sCity & ", " & rs!sOtherCity & ", " & rs!sRegion & _
        '         ", " & rs!sCountry
        objRoute.Waypoints.Add objMap.FindResults(sStart).Item(1)
        objRoute.Waypoints.Add objMap.FindResults(sEnd).Item(1)
        objRoute.Calculate
        rs!Laenge = objRoute.Distance
        rs!Dauer = objRoute.DrivingTime * 24 * 60
        rs.Update
        objRoute.Clear
        objApp.ActiveMap.Saved = True
        sStart = ""
        rs.MoveNext
    Loop
    rs.Close
    objApp.ActiveMap.Saved = True
tnsExit:
    Exit Function
End Function
Lässt sich das Ganze auch so programmieren, dass ich in einer zweiten Tabelle die Schuladressen angebe, und er mir für jede Wohnung die Entfernung zur nächsten Schule auswirft? Bei der oben dargestellten Vorgehensweise müsste ich jeweils eine der 300 Schuladressen eingeben und die Entfernung zu jeder Wohnung berechnen lassen. Und das Ganze dreihundert Mal wiederholen. Am Ende würde dann die kürzeste der 300 Entfernungen zu jeder der Wohnungen die Entfernung zur nächstgelegenen Schule angeben.

Ich bin für jeden Hinweis dankbar.

Beste Grüße,
Sebastian
DirkG
Programmierer


Verfasst am:
20. Nov 2006, 09:13
Rufname:

AW: Access + Mappoint + Luftlinie berechnen - AW: Access + Mappoint + Luftlinie berechnen

Nach oben
       

Hi Sebastian,

die Aufgabe, die Du stellst, ist mit der Funktion DistanceTo über das MapPoint LocationObject zu lösen. Der Source ist in diese Richtung anzupassen. Die MapPoint-Hilfe ist in der Beziehung sehr gut.

Grüße,

Dirk
Jeeson
Gast


Verfasst am:
10. Aug 2012, 08:56
Rufname:


AW: Access + Mappoint + Luftlinie berechnen - AW: Access + Mappoint + Luftlinie berechnen

Nach oben
       

Hallo zusammen,

ist zwar schon was her, aber wie kann ich von dem von Sebastian_HH geposteten code die Ergebnisse in Access ausgeben lassen?
Es ist ja eine Function. Wenn ich diese in eine Abfrage setzte, bekomme ich nur fehler.

Vielleicht kann mir ja jemand helfen.

Vielen Dank!
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge MS Project Forum: Termine von Stichtagen berechnen | MS Project 2010 1 Der Tobi und das Problem 193 22. Okt 2013, 12:08
Matthias Schäfer Termine von Stichtagen berechnen | MS Project 2010
Keine neuen Beiträge MS Project Forum: Vorgangsdauer automatisch durch Verknüpfungen berechnen 8 twin1 517 22. Jan 2013, 11:33
CodeRed Vorgangsdauer automatisch durch Verknüpfungen berechnen
Keine neuen Beiträge MS MapPoint Forum: GPS Tracks in Mappoint 0 FreddyNrw 1327 20. Aug 2011, 14:35
FreddyNrw GPS Tracks in Mappoint
Keine neuen Beiträge MS MapPoint Forum: Mappoint installieren über visual Studio 0 Gast 1423 04. Mai 2011, 23:59
Gast Mappoint installieren über visual Studio
Keine neuen Beiträge MS Project Forum: Dauer berechnen bei Änderung Enddatum 4 Project Neuling 2010 2426 05. Jul 2010, 18:33
Project Neuling 2010 Dauer berechnen bei Änderung Enddatum
Keine neuen Beiträge MS MapPoint Forum: Wie löse ich folgendes Problem bei Mappoint? 0 mapit 3221 12. Mai 2010, 17:59
mapit Wie löse ich folgendes Problem bei Mappoint?
Keine neuen Beiträge MS MapPoint Forum: MapPoint & udl & MySQL 1 mariosas 3952 11. Feb 2009, 23:19
SimHo MapPoint & udl & MySQL
Keine neuen Beiträge MS MapPoint Forum: Problem beim Importieren vo MySQL Daten via ODBC in Mappoint 0 SimHo 2210 11. Feb 2009, 17:27
SimHo Problem beim Importieren vo MySQL Daten via ODBC in Mappoint
Keine neuen Beiträge MS Project Forum: Sammelvorgang berechnen 1 kv21 2106 08. Apr 2008, 19:05
Gast Sammelvorgang berechnen
Keine neuen Beiträge MS MapPoint Forum: MapPoint - Karten im Internet veröffentlichen 2 Frage123 3234 21. Feb 2008, 20:07
Frage123 MapPoint - Karten im Internet veröffentlichen
Keine neuen Beiträge MS MapPoint Forum: Mappoint Adressen nutzen für SQL Anwendung 1 Th. Klinger 2001 29. Aug 2007, 13:28
DirkH Mappoint Adressen nutzen für SQL Anwendung
Keine neuen Beiträge MS MapPoint Forum: Wie berechnet Mappoint Geschwindigkeiten? 0 ole-jens 2222 28. Aug 2007, 15:07
ole-jens Wie berechnet Mappoint Geschwindigkeiten?
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Word VBA