programing

ID 또는 이름이 앵커인 웹 페이지 위치에 대한 하이퍼링크 기능

sourcejob 2023. 9. 26. 22:20
반응형

ID 또는 이름이 앵커인 웹 페이지 위치에 대한 하이퍼링크 기능

엑셀에서는 웹페이지로 하이퍼링크를 만들 수 있습니다.그러나 URL에 # 문자가 포함된 경우 Excel은 항상 해시 기호를 space-hyphen-space로 변환하여 링크가 더 이상 작동하지 않습니다.URL http://www.example.com/page#location 이 http://www.example.com/page%20-%20location 이 됩니다.

나는 세가지 방법을 시도했습니다.

  1. 수동으로 셀을 마우스 오른쪽 단추로 클릭하고 "하이퍼링크"를 클릭한 다음 주소 상자에 URL을 입력합니다.

  2. 프로그램적으로 전체 URL을 제공합니다.

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

  3. 프로그램적으로 위치를 "하위 주소"로 지정합니다.

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

셋 다 똑같은 문제를 내요.웹 페이지뿐만 아니라 특정 위치(id 또는 named 닻)에 대한 링크를 생성할 수 있습니까?어떤 도움이라도 주시면 감사하겠습니다.

참고: 코드 예제가 불완전합니다. 명료하게 설명하기 위해 앵커 및 TextToDisplay 매개 변수는 생략했습니다.

Excel 버전 : 2010 (14.0.6126.5003) SP1

엑셀 문제가 아닌 브라우저 문제로 보입니다.구글 크롬에서 인터넷 익스플로러로 전환하면 해결됩니다.

제안해주신 모든 분들께 감사드립니다...당신이 같은 문제를 발견하지 못했다고 말한 것이 제가 다른 곳을 보게 된 계기였습니다.

이것은 브라우저 문제가 아닙니다.MS Office 응용 프로그램에서 #을 ' -'(%20은 공백)로 바꾸는 URL을 망치는 중입니다.

이 성가신 문제는 마이크로소프트 자체적으로 존재한다는 것을 인정합니다.해당 페이지에서 인용하기

하이퍼링크를 만들 파일 이름에 파운드 기호(#)가 포함된 경우 이러한 문제가 발생할 수 있습니다.

참고: 파운드 기호는 파일 이름에 사용할 수 있는 유효한 문자이지만 Office 문서의 하이퍼링크에서는 사용할 수 없습니다.

그들의 유일한 해결책은 불쾌감을 주는 #를 제거하거나 문서에서 URL을 복사하여 붙여넣는 것입니다.대부분의 사람들이 #를 사용하는 이유를 고려하면 사용자들이 콘텐츠를 찾기 쉽게 하기 위한 것이라는 점을 고려하면 정말 말도 안 되는 것입니다.

여기에 투표함으로써 Microsoft의 이러한 태도를 개선해 줄 것을 요청합니다. https://office365.uservoice.com/forums/264636-general/suggestions/32273917-stop-mangling-urls-containing-a-so-we-can-link-t

#(hashtag|파운드 기호) 대신 %23을 사용하여 이 문제를 해결할 수 있었습니다.제 URL은 Excel 2013에서 작동합니다.'hovertext'는 URL에 # 기호를 표시하지만 링크를 편집하면 %23이 표시됩니다.

http://www.example.com/page#location하지 않음

http://www.example.com/page%23location작동하다

레지스트리 항목을 수동으로 변경하지 않고 찾은 최상의 해결책은 Internet Explorer를 기본 브라우저로 재설정하는 것입니다.이렇게 하면 URL, 프로토콜 및 확장 연결이 재설정되고 문제가 해결됩니다.

그렇게 하면 기본 브라우저를 Firefox로 변경하고 IE로 다시 변경해도 다시 깨지지 않습니다.

이 솔루션은 레지스트리를 이용하는 것보다 "깨끗한" 솔루션이며 당사의 공식 솔루션으로 기록되었습니다.

안타깝게도 엑셀에서 안전한 URL 인코딩 하이퍼링크 문제가 발생했습니다.

은 한 번 로에 로 했습니다.file://하이퍼링크를 한 번 클릭한 후 다시 끊겼습니다.

를 했습니다.=Hyperlink()엑셀은 수식에 연결된 URL 문자열을 변경할 수 없기 때문에 기능이 좋았고, 모든 것이 좋았습니다.

아싸, 내가 이겼네...아니오.

파일이 보호된 보기에 있거나 보안 설정으로 인해 또는 사용자가 파일을 Outlook첨부 파일로 미리 보는 경우#다로 .%20-%20

enter image description here

enter image description here

IT 부서에서 다른 브라우저를 설치할 수 없도록 했기 때문에 인터넷 익스플로러를 기본 브라우저로 만들 수는 없습니다.

기본 브라우저와 표준 로드를 변경할 수 있었던 두 대의 PC를 비교해보니 표준 로드에서 다음 레지스트리 항목이 누락되어 있었습니다.

솔루션: Office 하이퍼링크 Fix.reg저장(두 번 클릭)

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"

표준 부하(모든 사용자당 필요)에 추가한 후 링크는 문제없이 작동했습니다!

필요한 레지스트리 항목이 전부는 아니지만 IE에서 기본 브라우저를 다시 요청하고 나머지 항목(HTTP...)을 추가하기에 충분했습니다.

URL을 입력하고 엔터를 누르는 것만으로 셀에 하이퍼링크를 만들 수 있습니다.엑셀은 다음과 같은 것이 있으면 URL로 인식할 것입니다.

".com"

및/또는

"http://"

저는 당신의 문제를 시도해 보았지만 이해하지 못했습니다.URL에 다른 문제가 있을 수 있습니다. 실제로 사용하고 있는 URL과 더 유사한 URL(동일한 문자 유형)을 게시하고 싶을 수 있습니다.저는 2010년에도 뛰어난 실력을 가지고 있습니다.

를 한 이 %20-%20error)를 Excel 대신 Word 2010에서 입력합니다.

다음 방법으로 해결:

Internet Explorer에서:

  • 인터넷 옵션
  • 프로그램 탭
  • HTML 편집기: 공백이 없어야 합니다.

쉐어포인트 서버 포털에 대한 링크에 문제가 있는 경우 하이퍼링크의 일부를 잘라낼 수 있습니다(제 경우 굵은 글씨로 된 부분: Beginning_of_address /_layouts/15/start.aspx# /End_of_address).

저는 잘 작동합니다(MSO 16 + SPS 2k16).

오래된 게시물이라 아마 우리 모두가 답을 알고 있을 것입니다만 저는 이 문제를 해결했습니다.저는 엑셀 2016을 사용하고 있어서 아마 Ms팀이 수정한 것 같습니다.단순히 URL 문자열에 # 기호를 추가한 후 기능을 사용했습니다.URL에 책갈피를 추가하는 SubAddress(서브어드레스).

Dim oCell as Range("A1") 'Change to correct cell range containing the Hyperlink
ThisWorkbook.followHyperLink oCell.HyperLink(1).Address & "#" & 
oCell.HyperLink(1).SubAddress

언급URL : https://stackoverflow.com/questions/17656083/excel-hyperlink-to-web-page-location-with-id-or-named-anchor

반응형