2017-10-19 28 views
1

J'utilise un Mac et utilise la version 15.18 d'Excel (comme indiqué dans 'À propos d'Excel') bien que l'utilisation prévue pour le classeur final est à la fois les environnements Mac et Win. J'essaie d'obtenir une fonction «survol» ou «survol» dans Workbook_1, grâce à laquelle un grand nombre de données composées provenant de Workbook_2 peuvent être considérées comme un survol «survolé» ou «survolé». Je pense que la meilleure façon d'y parvenir serait via VBA, mais mes compétences VBA (en fait, la programmation générale) sont très minces (je suis un codeur occasionnel, récréatif, mais parfois faire des choses pour le travail, comme ça) et bien qu'un L'option VBA est peut-être quelque chose que je pourrais étudier à temps, j'ai besoin de quelque chose d'un peu plus vite à court terme, et en tout cas, le reste de mon cahier de travail est virtuellement là.Comment éviter HYPERLINK (link_location, [nom_amical]) ajouter des guillemets doubles à 'link_location' ref_text

Je cherche un mécanisme (s'il existe) pour éviter HYPERLINK (emplacement_lien, [nom_amical]) en ajoutant des guillemets doubles à 'emplacement_lien' lorsqu'il s'agit d'une référence à une cellule contenant du texte.

Je sais que ...

=HYPERLINK("[/Users/joc25/Desktop/Report_Audio_Current_171017.xlsx]Sheet1!R10C2","W") 

... ouvre le classeur secondaire et mettre en évidence la cellule R10C2 dans ce classeur, l'affichage « W » dans la cellule dans le classeur en cours.

Cependant, grâce à l'expérimentation curieuse, je suis tombé sur l'observation que ...

=HYPERLINK([Report_Audio_Current_171017.xlsx]Sheet1!R10C2,"X") 

... bien qu'il ne sera pas réellement ouvrir le lien (pas un problème pour moi) sera (si le décrit le fichier est ouvert, ce qui sera le cas) affichera le contenu de la cellule R10C2 (dans le classeur secondaire) sous la forme d'un résumé 'hover' (dans le classeur actuel), ce qui est exactement ce que j'essaie d'accomplir! Cependant, cela ne fonctionne que si la mutation/l'abus de la fonction HYPERLINK ci-dessus est écrit explicitement dans une cellule de classeur, ce qui n'est pas possible pour moi. J'ai besoin que le 'link_location' soit dynamique basé sur la sélection d'utilisateur dans d'autres cellules.

Ainsi, si une cellule contient Workbook_1 ...

=HYPERLINK(Sheet_Loc_Short&"R10C2","Y") 

... où gamme 'Sheet_Loc_Short' contient ...

="["&R35C49&R36C49&R37C49&"]Sheet1!" 

... où les références de cellules individuelles contiennent texte individuel qui sert à construire le nom de fichier complet et, lorsqu'il est calculé, traduit efficacement l'emplacement du fichier et le chemin vers (par exemple) ...

[Report_Audio_Current_171017.xlsx]Sheet1!R10C2 

.. la fonction éventuelle devient ...

=HYPERLINK("[Report_Audio_Current_171017.xlsx]Sheet1!R10C2","Z") 

... qui ne fonctionne pas comme « piraté » décrit ci-dessus. Notez qu'en réalité, le fichier cible changera (date) et la cellule/plage cible changera (via une correspondance basée sur des critères variables), mais pour cet exercice, je me suis efforcé de garder cela simple et de me référer au problème spécifique que je rencontre avec la construction de la fonction HYPERLINK. Y at-il un moyen d'éviter l'ajout de guillemets/marques de mots et d'obtenir la fonctionnalité 'hover'/'survol' que je peux quand entrer la fonction et le nom de fichier explicitement dans une cellule?

Première question ici, alors s'il vous plaît allez-y doucement sur moi !!

Merci beaucoup.

+0

Est-ce que 'indirect' travaille pour vous ici? –

+0

Merci @ForwardEd - J'avais déjà essayé INDIRECT et cela n'avait pas fonctionné pour moi. Mais, repoussé par votre suggestion, je l'ai essayé une fois de plus sur un simple échantillon et j'ai réalisé que je l'appliquais incorrectement! J'utilisais auparavant la fonction INDIRECT uniquement autour du 'ref_Loc_Short', alors que j'aurais dû envelopper tout le texte. Je vais l'ajouter à la formule complète lorsque j'aurai plus tard l'occasion de confirmer que tout va bien. Merci beaucoup! – Zirynx

+0

Puisque vous travaillez avec HYPERLINK comme formule, vous pourriez être intéressé par [cette bizarrerie] (https://stackoverflow.com/questions/45695579/formula-information-displaying-correctly-but-link-information-is-not) que j'ai rencontré quand je travaillais avec la formule –

Répondre

1

INDIRECT()

Cette formule devrait être votre ami dans cette situation. Il transforme les adresses de texte en références de cellules qu'Excel va réellement écouter. La principale mise en garde ici est que INDIRECT ne fonctionnera qu'avec les classeurs ouverts. Ce qui si je lis correctement ne sera pas un problème pour vous, juste quelque chose à garder à l'esprit.