• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

postcode afstand berekenen

Status
Niet open voor verdere reacties.
@ Warme Bakker:

Dit werkt helemaal perfect!!!!! Waarvoor enorme dank.
 
@Warme Bakkertje:

Rudi,

Dit onderwerp is al meer aan de orde geweest en ik gebruik al een tijd onderstaande code, die bij mij sneller rekent dan de code die jij hebt gegeven. Ik heb ze beide even in mijn ledenbestand gezet, waar ik die afstand hanteer.

Code:
Option Explicit

Public Function GetPage(sLink As String) As XMLHTTP40
  Dim oObj     As MSXML2.XMLHTTP40
  Set oObj = New XMLHTTP40
  oObj.Open "GET", sLink, False
  oObj.send ""
  Set GetPage = oObj
End Function

Public Function afstand(Code1 As String, Code2 As String)
  
  Dim oResult  As XMLHTTP40
  Dim oDOM     As DOMDocument40
  Dim sStr     As String
  Dim sResult  As String
  Dim sURL     As String
  Const sKeyWords As String = "</strong> route over <strong>"
  sURL = "http://route.anwb.nl/routeplanner/servlet/rp?action=0&zip1="
  sURL = sURL & Code1 & "&city1=&street1=&zip2="
  sURL = sURL & Code2 & "&city2=&street2=&iad=homepage.navigatie.middenkolom.routeplannerplanroute"
  Set oResult = GetPage(sURL)
  Set oDOM = New DOMDocument40
  On Error Resume Next
  sStr = oResult.responseText
  sStr = oResult.responseText
  sResult = Mid(sStr, InStr(sStr, sKeyWords) + Len(sKeyWords))
  sResult = Replace(Mid(sResult, 1, InStr(sResult, "m") - 1), ",", ".")
  afstand = Val(Left(sResult, Len(sResult) - 1)) * IIf(Right(sResult, 1) = "k", 1, 0.001)

End Function
 
slordige code

met de regels "Dim oDOM As DOMDocument40" en "Set oDOM = New DOMDocument40" wordt niets gedaan
"sStr = oResult.responseText" staat er dubbel in
en het parsen (filteren) van het resultaat gaat net zolang goed, zolang de site hetzelfde blijft

@allen
in hoeverre zitten jullie vast aan de anwb site?
met google maps is er meer mogelijk (meerd
 
@ Alphamax: Ik zit niet vast aan de site van de ANWB. En ik neem aan dat een afstand in de ANWB planner nagenoeg niets afwijkt ten opzichte van de afstand in Google Maps?
Wat is het voordeel van Google Maps in combinatie met Excel ten opzichte van de ANWB site?

Alvast bedankt!!!


Gr, Tom
 
Beste leden,

Ondanks dat dit een oude discussie is, stel ik hem toch.
Is het ook mogelijk om de OV planner van de ANWB hier in te voegen?
Je kan nu een keuze (bestand: Afstand_via_ANWB2) tussen snelste en korste route, maar kan je dit ook uitbreiden door OV?
Alvast bedankt.
 
Bedankt voor je reactie snb.
Echter als ik dat bestand download en open krijg ik meteen een compileer foutmelding.
snb, ik heb veel van jou post gezien. Is het daadwerkelijk mogelijk om via de ANWB de ov routeplanner te integreren?
 
@anthon,

Wat bedoel je precies met integreren ?

m.a.w. wat zou je willen bereiken ?
 
Beste Piet Bom,

Ik zou graag de anwb planner, zoals die hier boven werkend is, willen uitbreiden met de OV planner van de ANWB.
Zodat ik in Excel kan kiezen, vervoerstype: Auto / OV.
 
Verandert de afstand daardoor ? (zie titel van deze draad)
 
Nee SNB, ik zal een nieuw onderwerp aanmaken om deze vraag te stellen.
 
winhttp services zit bij alle windows versies en is onafhankelijk van office (COM domain object).

bij oudere office versies kun je in "verwijzingen" handmatig dit object toevoegen:

"Microsoft WinHTTP Services, version 5.1"
 
Ok, alle windows versies die COM controls ondersteunen. en office 2003 en nieuwer draaien om die reden ook niet op win 98 dus is voor discussie eigenlijk niet relevant
 
Het was geen discussie, maar een vraag. En voor die vraag is de versie waarmee de vraagsteller werkt wel relevant.
 
Ok laat me dat beter verwoorden: in office versies voor 2003 zijn geen macro's mogelijk (tenminste niet zoals nu met VBA). VBA, macro's en COM objecten en offices 2003+ gebruiken allemaal hetzelfde framework geïntroduceerd in XP.

Iedereen die een VBA macro kan maken moet per definitie office 2003 en hoger hebben en moet dus XP en hoger hebben en heeft dus toegang tot COM en de relevante objecten. Ergo iedereen die de informatie in dit topic kan gebruiken kan ook jouw oplossing gebruiken. QED :P
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan