Archief - User defined function in Excel - Wil niet werken.

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

FlatSix

Legacy Member
Ik ben voor het werk iets aan het maken dat afstand, tijd en nog wat andere zaken kan berekenen voor een bepaalde activiteit. Nu, er bestaat een User Defined Function (UDF) in VBA die =getdistance heet.

Op deze site eigenlijk alle uitleg: =GetDistance

Nu, als ik een Excel open, deze code erin kopieer dan krijg ik hem niet werkende. Heb er andere die wel werken dus lijkt me niet dat het aan mijn internet instellingen kan liggen, ...?

Op de site staat ook:

Important: Please remember that you need a direct Internet connection! Not via proxy etc.

Maar dat is niet van toepassing.

Wat uiteindelijk de bedoeling is voor deze functie is om een tabel te maken met in de kolommen alle steden van Europa, en dan op de eerste rij ook alle steden, en dan als waarde de afstand tussen de twee.

Bijvoorbeeld (maar dan voor veel meer steden)

------------------- Antwerpen / Amsterdam
Antwerpen 0km 50km
Amsterdam 50km 0km

De vraag is nu of iemand eens hetzelfde kan proberen, en zien of het hem/haar wel lukt?? En dan in best case de Excel even door sturen??

Alvast bedankt.

sandervdw

Legacy Member
xTwL- zei:
Ik ben voor het werk iets aan het maken dat afstand, tijd en nog wat andere zaken kan berekenen voor een bepaalde activiteit. Nu, er bestaat een User Defined Function (UDF) in VBA die =getdistance heet.

Op deze site eigenlijk alle uitleg: =GetDistance

Nu, als ik een Excel open, deze code erin kopieer dan krijg ik hem niet werkende. Heb er andere die wel werken dus lijkt me niet dat het aan mijn internet instellingen kan liggen, ...?

Op de site staat ook:



Maar dat is niet van toepassing.

Wat uiteindelijk de bedoeling is voor deze functie is om een tabel te maken met in de kolommen alle steden van Europa, en dan op de eerste rij ook alle steden, en dan als waarde de afstand tussen de twee.

Bijvoorbeeld (maar dan voor veel meer steden)

------------------- Antwerpen / Amsterdam
Antwerpen 0km 50km
Amsterdam 50km 0km

De vraag is nu of iemand eens hetzelfde kan proberen, en zien of het hem/haar wel lukt?? En dan in best case de Excel even door sturen??

Alvast bedankt.

Ik heb de tutorial gevolgd en hier werkt het.

FlatSix

Legacy Member
Kut. :)

Je hebt ook gewoon via developer > New Module > erin geplakt, en niets aangepast. Saven, en klaar. Dan =getdistance("____","____") en het werkt?

sandervdw

Legacy Member
xTwL- zei:

1) Heb je het in een "module" in VBA geplakt?
2) In welke taal staat uw excel?

Heb je ergens een lijstje van de steden? Dan probeer ik snel even heel uw excel te bouwen ;)
=GetDistance
(hoofdletters ;) ).

maar inderdaad, dat heb ik gedaan. Let er op dat als uw Excel in UK staat, uw argumentseparator een ; is ipv een ,

FlatSix

Legacy Member
sandervdw zei:
1) Heb je het in een "module" in VBA geplakt?
2) In welke taal staat uw excel?

Heb je ergens een lijstje van de steden? Dan probeer ik snel even heel uw excel te bouwen ;)

Hehe, alle zones van heel Europa please. Moet voor elke zone nog een bepalende stad beslissen, dus die lijst heb ik nog niet.

Heb het inderdaad in een module geplakt, en Excel staat in het Engels, ik krijg het vliegend schijt van Nederlandse functies.

FlatSix

Legacy Member
Bijvoorbeeld zones in België, maar zonder steden, die moet ik dus nog bepalen.

Maar wil dat voor heel Europa doen.

België

FlatSix

Legacy Member
Hoe kan ik dat nu downloaden? Heb "request" aangevraagd.

Merci voor de tijd alvast!

sandervdw

Legacy Member
xTwL- zei:
Hoe kan ik dat nu downloaden? Heb "request" aangevraagd.

Merci voor de tijd alvast!

Probeer nog eens?

no problem ;) Altijd handig om VBA nog eens te bekijken ook!
Performance van die Google Maps API is wel irritant trouwens.

FlatSix

Legacy Member
Download hem gewoon van uw Drive, en gelijk alle waarden worden #Value....

Moet dus toch echt iets zijn op mijn laptop of internet verbinding lijkt me.

sandervdw

Legacy Member
xTwL- zei:
Download hem gewoon van uw Drive, en gelijk alle waarden worden #Value....

Moet dus toch echt iets zijn op mijn laptop of internet verbinding lijkt me.

Dan gaat het inderdaad 1 van uw instellingen zijn. Als je gewoon een HTTP request stuurt, krijg je wel respons (via browser dus)?

Als dat werkt , moét het eigenlijk wel een taal-instelling zijn.

FlatSix

Legacy Member
Vrees dat dat Chinees is voor mij. :) Wat bedoel je met HTTP request?

Zou het eventueel interessant zijn thuis eens te proberen?

FlatSix

Legacy Member
Ik krijg gewoon de code te zien;
{
"destination_addresses" : [ "Amsterdam, Netherlands" ],
"origin_addresses" : [ "Brussels, Belgium" ],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "213 km",
"value" : 212529
},
"duration" : {
"text" : "2 hours 23 mins",
"value" : 8552
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}

Heb jij hiervoor =getdistance("Amsterdam, Nederland","Brussels, Belgium") getypt in Excel dan?

sandervdw

Legacy Member
xTwL- zei:
Ik krijg gewoon de code te zien;


Heb jij hiervoor =getdistance("Amsterdam, Nederland","Brussels, Belgium") getypt in Excel dan?

Wat die excel doet is eigenlijk zo'n URL opbouwen (Je ziet in die URL de namen "Brussel" en "Amsterdam" staan). Uit het stukje dat je daar te zien krijgt, gaat hij zoeken naar het woord "value"
(dit stukje code: Set regex = CreateObject("VBScript.RegExp"): regex.Pattern = """value"".*?([0-9]+)": regex.Global = False)
En dan toont hij in Excel de waarde die daar achter komt.

Maar om dat terug te krijgen zou je in de excel dus GetDistance("Brussel";"Amsterdam") moeten doen

FlatSix

Legacy Member
Kan in de URL wel aanpassen naar wat ik wil, en dan past die de code ook aan, dus misschien ligt het issue in het terug halen van de data???

sandervdw

Legacy Member
xTwL- zei:
Kan in de URL wel aanpassen naar wat ik wil, en dan past die de code ook aan, dus misschien ligt het issue in het terug halen van de data???

Als het in uw browser lukt, en Excel wordt niet tegengehouden door de firewall (zou nog kunnen, maar lijkt me raar). Dan zou het moeten werken.

FlatSix

Legacy Member
Kan het zijn dat iets van instellingen qua internet gebruik vanuit bedrijf in de weg ligt?

sandervdw

Legacy Member
xTwL- zei:
Kan het zijn dat iets van instellingen qua internet gebruik vanuit bedrijf in de weg ligt?

Dat kan. En dat kan specifiek op die laptop zo zijn ook.

Maar dat kan je enkel testen door dit document te openen op je eigen laptop thuis.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan