Comment puis-je get l'adresse sous-jacente dans l'hyperlien d'Excel sans VBA

Dans ma feuille de calcul, il existe un WorkItemRange avec une colonne d'ID d'élément de travail et une autre colonne de liens vers un site Web externe, qui est une formule qui se résume à:

 =HYPERLINK("http://some-tfs/_workitems/edit/" & A1, "TFS Link") 

Dans la même feuille de calcul, mais une autre feuille de calcul, il y a une colonne avec un VLOOKUP qui veut get HYPERLINK .

 =VLOOKUP("SomeWorkItemID",WorkItemsRange,2,FALSE) 

Le VLOOKUP , cependant, renvoie TFS Link au lieu de l'URL sous-jacente, "http://some-tfs/workitem/" & A1 .

J'ai besoin de recréer l'hyperlien dans ma deuxième feuille de calcul, de la manière suivante:

 =HYPERLINK(?VLOOKUP(), "Click here to open Work Item") 

Comment formuler mon VLOOKUP afin qu'il returnne l'URL sous-jacente? Certes, parce que la deuxième feuille a access à l'ID de l'élément de travail, je pourrais simplement copyr la formule HYPERLINK origine de WorkItemRange , mais la gamme et la formule sont supposées être situées dans une feuille de travail cachée qui n'est pas disponible pour les users occasionnels de la feuille de calcul .

De plus, cette fiche de travail est complètement dépourvue de VBA et j'aimerais le garder de cette façon.

EDIT: Je request également des solutions sans Excel 4.0 Fonctions, s'il en existe.

Toute information est appréciée. C'est ma première question dans SO et Gosh, j'espère que je le fais bien.

Suite au schéma:

entrez la description de l'image ici

vous pouvez append un Nom de Formules-> Nom Manager avec la formule suivante:

 RetHYP -> =GET.FORMULA(INDEX(Sheet1!$A$12:$A$14;MATCH(Sheet1!$B$13;Sheet1!$A$12:$A$14))) 

et dans la cellule:

 B14 -> =HYPERLINK(MID(RetHYP;1+FIND("""";RetHYP);FIND(";";RetHYP)-(2+FIND("""";RetHYP)));INDEX(A12:A14;MATCH(Sheet1!$B$13;Sheet1!$A$12:$A$14))) 

Le RetHYP renvoie la formule de HYPERLINK, après la cellule, vous avez reconstruit l'HYPER …

Utilisation de VBA: avec cette fonction, vous avez le Hyper:

 Public Function ExtraxtHYP(AllCell As Range, LinkS As Ssortingng) As Ssortingng Dim Ssorting, SsortingN, SsortingA, AddrS As Ssortingng Dim xx As Range For Each xx In AllCell If xx.Value = LinkS Then Ssorting = Mid(xx.Formula, InStr(1, xx.Formula, "&") + 1, InStr(1, xx.Formula, ",") - InStr(1, xx.Formula, "&") - 1) SsortingN = Trim(xx.Parent.Name) & "!" & Trim(Ssorting) SsortingA = (Mid(xx.Formula, InStr(1, xx.Formula, """"), InStr(1, xx.Formula, ",") - InStr(1, xx.Formula, """"))) SsortingA = Left(SsortingA, InStr(1, SsortingA, "&")) & SsortingN SsortingA = Application.Evaluate(SsortingA) ExtraxtHYP = SsortingA Exit Function End If Next End Function 

First Arg c'est la gamme dans la feuille principale, et la seconde le lien que vous searchz …
Avec cette valeur, vous pouvez créer le lien (exemple: dans B10, vous avez "Libero"):

 =HYPERLINK(ExtraxtHYP(Sheet1!A12:A14;Sheet2!B10);B10) 

Je répète la meilleure façon d'utiliser une colonne cachée pour que datatables soient claires …