Excel opent hyperlink niet

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Mijn vraag
Ik heb een begrotingsmodel voor scholen gemaakt dat ik al jaren via mijn website gratis aanbied. Sinds twee jaar heb ik een link aangebracht naar een xml-sheet dat op mijn website staat, waardoor scholen als er nieuwe data vanuit bijvoorbeeld het ministerie beschikbaar is niet meer hoeven te knippen en plakken, maar ze kunnen simpelweg via een macro of gegevens vernieuwen de data van het model opnieuw inladen. Erg basic. Maar goed, dat werkt nu niet meer. Excel geeft een time out: "kan www.begrotingmaken.eu niet openen. De verbinding met deze internetsite duurde langer dan de toegewezen tijd".

Relevante software en hardware die ik gebruik
De site wordt gehost bij Mijn Domein.

Wat ik al gevonden of geprobeerd heb
Vorig jaar deed de link het ook opeens niet meer. Ik kon toen het probleem heel eenvoudig nabootsen: open een lege Excelsheet, type in een cel www.begrotingmaken.eu en enter, waardoor een hyperlink ontstaat. Klik de hyperlink aan en je krijgt deze melding. Ik heb toen dat probleem op kunnen lossen (gewoon door trial en error, de helpdesk van Mijn Domein had ik niets aan) door in de .htaccess van mijn site de regel allow from all op te nemen. Toen werkte het weer.

Kennelijk had Mijn Domein iets gewijzigd in hun set up, waardoor ik opeens die regel allow from all bij de htaccess nodig had. Toen was het echter wel zo dat de link gewoon helemaal niet thuis gaf. Nu is het probleem dat er een timeout op lijkt te treden.

Als ik www.nu.nl of net wat als hyperlink in Excel invoeg, dan is er niks aan de hand. Als ik via lookup kijk welke sites nog meer op het IP-adres van mijn site worden gehost, kom ik bijvoorbeeld de site www.maramichels.com tegen. Als ik die site in Excel als hyperlink opneem en erop klik, krijg ik dezelfde melding.

Kennelijk heeft Mijn Domein weer eens iets gewijzigd waardoor Excel hick ups krijgt. Maar wat? Weten ze ws. zelf niet eens. Heeft iemand enig idee hoe ik een workaround kan inpassen?

Dank...

Alle reacties


Acties:
  • 0 Henk 'm!

  • Montaner
  • Registratie: Januari 2005
  • Laatst online: 08:05
Post de code dan eens van je ophalen Macro. Nu weten we niet wat je probeert.

Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Hoi, bedankt voor je reactie. Het zit niet in de macro. Zoals ik schrijf werkt een simpele hyperlink al niet. Als je in Excel een nieuw blad maakt en in een willekeurige cel www.begrotingmaken.eu typt en enter aanslaat, zal excel een hyperlink in die cel maken. Klik op die link en na even wachten krijg je de foutmelding.

Voor zover ik kan zien (goed googlen, geen eigen kennis) checkt excel bij een link altijd eerst wat voor soort link het is. Kennelijk is mijn domein door excel niet goed te benaderen en krijgt hij een timeout.

Vorig jaar kreeg excel een 404 en via allow from all heb ik toen die 404 op kunnen heffen. Nu geen idee.

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Kijk dan gewoon eens in je server logs wat bijv de user-agent is waarmee je de server benadert.
Of gooi er eens fiddler tussen zodat je de requests kan volgen en kan zien of die wel goed gaan.

Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Gomez12 schreef op donderdag 30 maart 2017 @ 19:29:
Kijk dan gewoon eens in je server logs wat bijv de user-agent is waarmee je de server benadert.
Of gooi er eens fiddler tussen zodat je de requests kan volgen en kan zien of die wel goed gaan.
Ik ben bang dat je mijn hobby niveau wat overschat ;)
Maar als ik in de logs kijk en de user-agents er even uitfilter dan zijn dit twee van de verzoeken:
XXX.XXX.XX.XXX - - [30/Mar/2017:19:18:31 +0200] "HEAD / HTTP/1.1" 200 295 "-" "Microsoft Office Excel 2014" 232 295
XXX.XXX.XX.XXX - - [30/Mar/2017:19:48:07 +0200] "HEAD / HTTP/1.1" 200 295 "-" "Microsoft Office Excel 2014" 232 295

Acties:
  • +2 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Blijkbaar heb ik het niveau wel goed ingeschat, want je kan het produceren :)

Maar ok, als dit echt uit jouw requests komt. Dan geeft de server een 200 status-code terug in 295 millisecondes. Dit zou ertoe moeten leiden dat excel tevreden is met zijn check en dat die de url teruggeeft aan de browser.

Echter gebeurt dat niet. Om de een of andere reden bereikt het antwoord van je server excel niet.
Persoonlijk zou ik eens bij je hoster informeren of die iets van een firewall met wat user-agent regels erin hebben zitten oid (of dat je dit zelf hebt, maar dat lijkt onwaarschijnlijk omdat nu.nl wel werkt bij jou).
Dit lijkt voornamelijk in het verkeer van je server naar excel fout te gaan en ik zou je hoster verdenken en daar info opvragen.

Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Hartelijk dank voor het meekijken en je reacties. Ik heb een ticket aangemaakt bij Mijn Domein. Elke keer wijzigen zij wel iets waardoor ik weer uren op zoek moet naar een oplossing. Kan misschien beter overstappen op een andere hoster.

Acties:
  • +1 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
** UPDATE **

Mijn Domein geeft aan dat zij de user agent Mozilla/4.0 blokkeren omdat ze veel aanvallen zien met deze verouderde user agent. Nu is dat ook precies de user agent die Excel gebruikt...

1.2.3.4 - - [15/Apr/2017:09:44:34 +0200] "HEAD / HTTP/1.0" 200 472 "-" "Microsoft Office Excel 2014"
1.2.3.4 - - [15/Apr/2017:09:44:34 +0200] "GET / HTTP/1.0" 200 2652 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; Win64; x64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; ms-office)"

Aangezien ik niet echt verwacht dat ik Microsoft kan bewegen speciaal voor mij hun user agent eens te updaten ;) ben ik eigenlijk op zoek naar een manier om Excel een andere user agent mee te geven.

Kan iemand mij helpen? Als leek gebruik ik nu een stukje simpele code: ik heb een data connectie aangemaakt in het werkblad en die roep ik aan via:

ActiveWorkbook.Connections("actuele-data-begrotingsmodellen").Refresh

Ik lees op internet dat je in VBA wel eigen headers kunt meegeven aan verzoeken, maar dat zijn eigen opgestelde GET codes en geen idee hoe ik dat dan weer kan implementeren.

Dank alvast.

Acties:
  • 0 Henk 'm!

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
arievl schreef op zaterdag 15 april 2017 @ 14:11:
Mijn Domein geeft aan dat zij de user agent Mozilla/4.0 blokkeren omdat ze veel aanvallen zien met deze verouderde user agent.
Op mijn hosting blokkeer ik ook HTTP/1.0 en "MSIE [2-9]" omdat dat ook wordt gebruikt voor inbraak.
Daarnaast zou iedereen eigenlijk gewoon IE 11 of anders moeten gebruiken.

Heb je het al met de nieuwste Excel of Open/Libre Office geprobeerd, want blijkbaar gebruik je ook een verouderde Excel (of Windows XP ofzo).

[ Voor 6% gewijzigd door DJMaze op 15-04-2017 17:33 ]

Maak je niet druk, dat doet de compressor maar


Acties:
  • +1 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Nu online

Damic

Tijd voor Jasmijn thee

DJMaze schreef op zaterdag 15 april 2017 @ 17:30:
[...]

Op mijn hosting blokkeer ik ook HTTP/1.0 en "MSIE [2-9]" omdat dat ook wordt gebruikt voor inbraak.
Daarnaast zou iedereen eigenlijk gewoon IE 11 of anders moeten gebruiken.

Heb je het al met de nieuwste Excel of Open/Libre Office geprobeerd, want blijkbaar gebruik je ook een verouderde Excel (of Windows XP ofzo).
Als de user agent klopt gebruikt ie Windows 10 :) dus zal wel een legacy ding zijn van excell

[ Voor 4% gewijzigd door Damic op 15-04-2017 21:52 ]

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Klopt, ik draai de meest recente Windows build en Office 2016. Zal idd. een legacy ding zijn. Als ik een registersleutel toevoeg om Mozilla/5.0 standaard user agent te maken loopt het prima, maar omdat ik dat eind niet kan beïnvloeden bij gebruikers van de excelmodellen zou het mooi zijn als ik Excel bij de refresh van de connectie zich met een andere user agent kan laten aankloppen bij de server.

Acties:
  • +1 Henk 'm!

  • SmiGueL
  • Registratie: September 2005
  • Laatst online: 22:12
arievl schreef op zaterdag 15 april 2017 @ 14:11:
** UPDATE **

Mijn Domein geeft aan dat zij de user agent Mozilla/4.0 blokkeren omdat ze veel aanvallen zien met deze verouderde user agent. Nu is dat ook precies de user agent die Excel gebruikt...

1.2.3.4 - - [15/Apr/2017:09:44:34 +0200] "HEAD / HTTP/1.0" 200 472 "-" "Microsoft Office Excel 2014"
1.2.3.4 - - [15/Apr/2017:09:44:34 +0200] "GET / HTTP/1.0" 200 2652 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; Win64; x64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; ms-office)"

Aangezien ik niet echt verwacht dat ik Microsoft kan bewegen speciaal voor mij hun user agent eens te updaten ;) ben ik eigenlijk op zoek naar een manier om Excel een andere user agent mee te geven.

Kan iemand mij helpen? Als leek gebruik ik nu een stukje simpele code: ik heb een data connectie aangemaakt in het werkblad en die roep ik aan via:

ActiveWorkbook.Connections("actuele-data-begrotingsmodellen").Refresh

Ik lees op internet dat je in VBA wel eigen headers kunt meegeven aan verzoeken, maar dat zijn eigen opgestelde GET codes en geen idee hoe ik dat dan weer kan implementeren.

Dank alvast.
Ik las dit topic gisteravond en dacht; Laat ik dat even snel in elkaar flansen..
Bleek helaas toch wat lastiger dan gedacht. :'(
Ik heb het dus nog niet werkend, maar omdat het iemand misschien verder helpt alsnog even wat dan wél gelukt is..

Ik zie dat je bij Gegevens --> Verbindingen automatisch de URL
http://www.arievanloon.nl...ta-begrotingsmodellen.xml
binnen probeert te halen.
Je macro refresht dus eigenlijk deze data, waarna deze XML file in het laatste tabblad wordt geïmporteerd.

Mijn idee was dus om bovenstaande, het importeren van een XML file, OOK in de macro te zetten, zodat je het met een andere user-agent binnen kan halen.
Als ik de manier van de deze site probeer;
en deze code op de plek zet van de ActiveWorkbook.Connections("actuele-data-begrotingsmodellen").Refresh in de 'updaten' Sub:

code:
1
2
3
4
5
6
7
8
9
10
11
Dim xmlhttp As New MSXML2.XMLHTTP60, myurl As String
myurl = "http://www.arievanloon.nl/modellen/actuele-data-begrotingsmodellen.xml"
xmlhttp.Open "GET", myurl, False

xmlhttp.setRequestHeader "Content-Type", "text/json"
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.setRequestHeader "User-Agent", "Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405"
xmlhttp.setRequestHeader "Authorization", AuthCredentials

xmlhttp.Send
MsgBox (xmlhttp.responseText)


Dan lijkt hij dit bestand inderdaad netjes binnen te halen! (zie MsgBox popup)


Maar ik krijg het helaas niet voor elkaar dat deze text als XML wordt geïmporteerd in de sheet..

Delidded 4770K 4.7GHz @ H220 || Gigabyte Z87X-UD4H || 16GB @ 2400MHz || Gigabyte GTX 760 || 2x128GB Samsung 830 @ RAID-0 & WD 3 TB || Iiyama XB2483HSU-B1 || Synology DS916+ 3x6TB + 120GB SSD Cache || Synology DS213+ 6TB backup


Acties:
  • 0 Henk 'm!

  • arievl
  • Registratie: Mei 2014
  • Laatst online: 30-03 12:40
Top dat je wilt helpen, waardeer ik.
Als ik geen XML online zet maar een gewone excelsheet, zou dat het probleem oplossen? Ik heb alleen een xml genomen omdat dat voor deze manier moest ;)
Pagina: 1