2013-07-15 10 views
11

W programie Excel mogę utworzyć hiperłącze do strony internetowej. Jeśli jednak adres URL zawiera znak #, program Excel zawsze konwertuje znak mieszania na spację-spację, aby odsyłacz przestał działać. URL http://www.example.com/page#location staje http://www.example.com/page%20-%20locationHiperłącze programu Excel do strony internetowej o identyfikatorze lub nazwie zakotwiczenia

Próbowałem trzy sposoby

  1. ręcznie, kliknij prawym przyciskiem myszy komórkę, kliknij „hiperłącze” i wpisz adres URL w polu adresu

  2. programowo, dostarczając pełny adres URL:

    Worksheets(1).Hyperlinks.Add Address:="http://www.example.com/page#location"

  3. prog ramatically, podając lokalizację jako "subadresem":

    Worksheets(1).Hyperlinks.Add Address:="http://www.example.com/page", SubAddress:="location"

Wszystkie trzy dają ten sam problem. Czy możliwe jest utworzenie łącza do określonej lokalizacji (identyfikatora lub nazwanej kotwicy) nie tylko do strony internetowej? Byłbym wdzięczny za każdą pomoc.

Uwaga: przykłady kodu są niekompletne; dla jasności pominąłem parametry Anchor i TextToDisplay.

Excel version: 2010 (14.0.6126.5003) SP1

+0

To ciekawy. Nie mam tego problemu. Mam WinXP z programem Excel 2007. Podejrzewam, że istnieje jakieś ustawienie w opcjach, które może mieć znaczenie. W szczególności sprawdź opcje automatycznej korekty dla "#". –

+0

Dzięki za sugestię. Sprawdziłem opcje automatycznej korekty, ale nie mogę znaleźć niczego, co mogłoby to zrobić. – Graham

+0

Pojawia się również w programach Excel i Word 2013. Bardzo dziwny. – Mansfield

Odpowiedz

1

Można utworzyć hiperłącze w komórce po prostu przez wpisanie adresu URL i naciskając klawisz ENTER. Excel rozpozna go jako adres URL, jeśli ma takie rzeczy jak

".com"

i/lub

"http: //"

I wypróbował twój problem i go nie dostał. Być może jest jakiś inny problem z twoim adresem URL. Możesz opublikować bardziej podobny adres URL do tego, którego faktycznie używasz (te same typy znaków). Mam również Excel 2010.

+0

Dzięki , Stepan. Wypróbowałem twoją sugestię. Adres URL wyświetla się poprawnie na stronie, ale po kliknięciu przechodzi na nieprawidłowy adres. Jeśli nie masz tego samego problemu, zastanawiam się, czy to jest problem z wersją ... będzie dalej badać. – Graham

6

Wygląda na to, że jest to problem przeglądarki, a nie Excel. Przejście z Google Chrome na Internet Explorer rozwiązało problem.

Dziękuję wszystkim za sugestie ... twierdzenie, że nie spotkałeś się z tym samym problemem, sprawiło, że zacząłem szukać gdzie indziej.

+1

... i zmiana domyślnej przeglądarki z powrotem na Chrome nie przywróciła błędu. Arkusz kalkulacyjny pozostał niezmieniony, ale zachowanie się różniło. W każdym razie problem rozwiązany, ale nie jestem mądrzejszy! – Graham

+1

Mam ten sam problem, z tym wyjątkiem, że mogę go w niezawodny sposób odtworzyć, ustawiając Chrome jako domyślną przeglądarkę i niezawodnie naprawić, ustawiając IE jako domyślną przeglądarkę. Bardzo w tym momencie krzyż z Microsoftem! –

+0

To nie jest problem z przeglądarką. Jest to zasługa Microsoftu i "od samego początku". Zobacz moją odpowiedź tutaj: (https://stackoverflow.com/a/47319383/5196274). Poproś Microsoft o poprawę tego zachowania, głosując tutaj: (https://office365.uservoice.com/forums/264636-general/suggestions/32273917-stop-mangling-urls-containing-a-so-we-can-link-t) –

0

Udało mi się ominąć to, używając% 23 zamiast znaku # (hashtag | funt). Mój URL działa teraz w programie Excel 2013. "Hvertext" pokazuje symbol # w adresie URL, ale edycja linku pokazuje% 23.

http://www.example.com/page#location nie działa

http://www.example.com/page%23location działa

+1

Nie działa dla mnie. Wypróbowałem '% 23' i' +% 23', ale obydwa dały błąd w programie Word Professional Plus 2010 'Nie można otworzyć ... Nie można pobrać żądanych informacji' zanim dotarły do ​​domyślnej przeglądarki Chrome. – sgryzko

0

Najlepszym rozwiązaniem odkryliśmy, bez konieczności ręcznego zmieniania wpisów w rejestrze, to zresetować program Internet Explorer będzie domyślną przeglądarką. Spowoduje to zresetowanie powiązania adresu URL, protokołu i rozszerzenia oraz rozwiązanie problemu.

Gdy to zrobisz, zmiana domyślnej przeglądarki na Firefox i zmiana z powrotem na IE nie spowoduje jej ponownego złamania.

To rozwiązanie jest "czystsze" niż granie w rejestrze i zostało zarejestrowane jako oficjalne rozwiązanie w naszej firmie.

0

Miałem współpracownika z tym dokładnie problem (w tym błąd %20-%20) w programie Word 2010 zamiast w programie Excel.

rozwiązać w następujący sposób:

W programie Internet Explorer:

  • Opcje internetowe
  • Programy Zakładka
  • HTML Editor: to zapewnić nie jest puste
0

Niestety, w W Excelu wciąż napotykałem problemy z bezpiecznymi linkami zakodowanymi w adresach URL.

Będą działać jeden raz, a następnie zostaną zmienione na hiperłącze file:// po tym, jak raz kliknięto i ponownie się zepsuły.

Użyłem więc funkcji =Hyperlink() i wszystko było dobrze, ponieważ program Excel nie może zmienić mojego połączonego ciągu URL w formule.

Yay, wygram ... nope

Kiedy pliki są w widok chronionym ze względu na ustawienia zabezpieczeń lub jeśli użytkownik jest podglądu plik jako załącznik w programie Outlook, symbol # nadal jest przekształcany w %20-%20

enter image description here

enter image description here

Ponieważ nasz dział IT nie pozwoliło nam zainstalować inną przeglądarkę, nie możemy uczynić Internet Explorer domyślną przeglądarką (ponieważ już jest).

Porównując dwa komputery, jeden, który był w stanie zmienić domyślną przeglądarkę vs standardowe obciążenie, zauważyłem, że następujący wpis rejestru nie było w standardowym obciążeniu.

Rozwiązanie:ZapiszBiuro hiperłącza Fix.reg (a podwójne kliknięcie)

Windows Registry Editor Version 5.00 

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http] 

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice] 
"Progid"="IE.HTTP" 

Po dodaniu go do standardowego wsadu (wymagane za każdego użytkownika) pracował bez powiązania wszelkie problemy!

Nie wszystkie wpisy rejestru są wymagane, ale wystarczyło, aby program IE poprosił o ponowne ustawienie domyślnej przeglądarki i dodanie reszty (HTTPS ...).

0

To nie jest problem z przeglądarką. Aplikacje MS Office to zniekształcone adresy URL, w których # jest zamieniane na "-" (% 20 to spacja).

Ten denerwujący problem został przyjęty przez Microsoft themselves. Aby zacytować z tej strony:

Te problemy mogą wystąpić, gdy nazwa pliku, do którego hiperłącze zawiera nazwę, zawiera znak funta (#).

UWAGA: Znak funta jest prawidłowym znakiem używanym w nazwie pliku, ale nie jest akceptowany w odsyłaczach hipertekstowych w dokumentach Office.

Ich jedynym obejścia mają usunąć naruszające # lub skopiować i wkleić adres URL z dokumentu ... kompletnie śmieszne biorąc pod uwagę przyczynę większość ludzi byłaby pomocą # jest stworzenie łatwiej użytkownikom znajdź treść.

zażądać od firmy Microsoft poprawić ten problem poprzez głosowanie tutaj: https://office365.uservoice.com/forums/264636-general/suggestions/32273917-stop-mangling-urls-containing-a-so-we-can-link-t

Powiązane problemy