45 votes

Lien hypertexte Excel ne redirigeant pas correctement (bug ?)

J'ai un problème de lien hypertexte dans Excel : je clique sur, disons A1 , copier le lien dans celui-ci ( http://www.godaddy.com/domains/searchresults.aspx?ci=54814 ), faites un clic droit sur l'hyperlien et copiez la MÊME URL que le lien (si elle n'est pas automatiquement détectée et modifiée).

Lorsque je clique dessus, je suis redirigé vers http://www.godaddy.com/domains/search.aspx?ci=53972 .

Si je copie et colle le lien directement dans le navigateur, il fonctionne correctement (c'est-à-dire que je ne suis pas redirigé vers une URL différente).

Quelqu'un sait-il ce qui se passe ?

1voto

JWalter Points 11

J'ai constaté que ce problème se posait lorsque l'URL cible était un site sécurisé nécessitant une connexion. Même si je suis déjà connecté dans une autre fenêtre, cela ne fonctionne pas correctement. Si je coupe et colle l'URL dans un nouvel onglet ou une nouvelle fenêtre, Chrome est suffisamment intelligent pour constater que je me suis déjà authentifié et ouvre la nouvelle page correctement. Toutefois, si je ne suis pas connecté au site, je serai redirigé vers la page de connexion, comme prévu.
Mais lorsque je clique exactement sur la même URL dans Excel, avec les mêmes conditions, je n'obtiens que la page de connexion, ou mon site distant me dit simplement qu'il s'agit d'un navigateur non pris en charge.
Le problème vient clairement d'Excel, car si je prends cette même feuille de calcul et que je l'enregistre au format PDF, les liens hypertextes qui s'affichent dans le PDF fonctionnent parfaitement lorsqu'on clique dessus.
Outre la correction de cette "fonctionnalité" manifestement involontaire d'Excel/Office qui tente de vérifier les liens comme d'autres l'ont indiqué, la seule solution que j'ai trouvée a été de créer une page de redirection locale qui pourrait prendre mes paramètres uniques dans l'URL et ouvrir une nouvelle fenêtre comme suit (merci à d'autres pour le code JavaScript) [ ] http://mylocaldomain.com/redirect.html?ID=12345 , où la page de redirection se trouve sur un serveur local que vous contrôlez et où le paramètre 12345 redirige l'URL vers l'entrée particulière requise. Pour mon SS avec environ 10000 liens, cela fonctionne très bien.

Le fichier Redirect.html se présente comme suit.

<!DOCTYPE html>
<html>
<script>
function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,    
    function(m,key,value) {
      vars[key] = value;
    });
    return vars;
  }
    document.getElementById("demo").innerHTML=getUrlVars()["type"];
    var varbaseurl=[put your base url here]
    window.location = varbaseURL  + getUrlVars()["type"]
</script>
<body> 
redirecting to: <p id=demo></p>

0voto

Je peux reproduire votre problème, mais il ne s'agit pas d'un problème lié à Excel. C'est en fait Godaddy qui vous redirige vers le deuxième lien. Essayez de coller ce lien dans votre navigateur et vous verrez qu'il redirige vers le second.

Notes:Testé sur Excel 2007, Firefox 13.0.1

0voto

James Points 427

J'ai eu le même problème, mais le site sur lequel je me rendais incluait le traitement et l'extraction de données sur la base d'un horodatage. Je copiais l'URL dans une nouvelle cellule. Je changeais la date. Je clique sur la nouvelle url, MAIS j'obtiens l'ancienne url.

Cependant, si je clique sur la cellule de la nouvelle url, j'accède à la fenêtre d'affichage des cellules je clique sur mon curseur n'importe où dans cette fenêtre puis je clique sur une autre cellule les valeurs de la date de l'url changent et que je clique sur l'url, j'obtiens les bonnes données.

Tout cela dans IE.

Il semble que lorsque vous copiez l'url, les informations sur le site de l'url sont ajoutées. Je ne sais pas trop ce qui se passe lorsque j'ouvre la cellule et que je ne la modifie pas, mais l'url change lorsque vous placez le pointeur dessus. Je suis un aimant régulier pour ce genre de choses dans Excel. C'est probablement la raison pour laquelle je ne lui fais pas confiance.

0voto

mike s Points 1

J'ai résolu le problème en effectuant une recherche Google sur l'URL et en utilisant l'URL de la page de résultats de Google pour l'hyperlien.

par exemple pour sweettoothrewards.com J'ai utilisé https://www.google.ca/?gfe_rd=cr&ei=xwK5VY-LG8KC8QeGn4LoDw&gws_rd=ssl#q=+sweettoothrewards.com Dans le navigateur Opera, sans que je sois connecté.

0voto

Mika Points 205

J'ai pu approfondir cette question alors que j'essayais de relier un classeur Excel à mon propre serveur web. J'ai remarqué qu'en cliquant sur un lien dans Excel, trois requêtes étaient adressées au serveur.

  1. GET HEAD (avec session temporaire)
  2. GET (avec session temporaire)
  3. GET (avec session réelle)

Mais si la page liée redirigeait l'utilisateur, je ne voyais pas le troisième GET. Au lieu de cela, le deuxième GET a été redirigé vers une nouvelle page et la session est restée temporaire. Cela signifie que si la page cible nécessite une authentification, l'utilisateur sera redirigé vers une page de connexion même s'il est déjà authentifié.

Cela m'a conduit à l'idée de créer une page d'atterrissage qui redirige l'utilisateur vers la page cible s'il est authentifié. Et cela fonctionne. Lorsque le troisième GET est reçu, le serveur remarque que l'utilisateur est authentifié et redirige vers la page cible. Pour les utilisateurs non authentifiés, la page d'atterrissage affiche un lien vers la page cible. Lorsque l'utilisateur clique sur le lien, il est redirigé vers la page de connexion.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X