Excel에서 HTML 파일의 특정 섹션에 대한 하이퍼 링크를 만들려면 어떻게해야합니까?


8

앵커가 포함 된 HTML 파일이 있습니다. 앵커 이름을 지정하면 브라우저를 통해 특정 섹션으로 이동할 수 있으므로
file://<html_path>/<html_file>.html#<anchor_name>
브라우저의 주소 상자에 쓸 때 파일이 열리고 올바른 섹션으로 스크롤됩니다.

HYPERLINKExcel 의 함수에 동일한 링크를 배치하면 링크 가 웹 페이지를 열고 #파트를 자르고 지정된 섹션으로 스크롤하지 않습니다. HYPERLINK함수에 앵커 부분이있는 웹 페이지에 대한 링크를 배치하면 제대로 작동하는 것처럼 보이므로 http://링크 #가 잘리지 않고 여전히 작동합니다.

Google을 검색 하면이 포럼 게시물 과 해시를 유효한 파일 이름 문자이지만 사무실 내 파일 이름으로 사용할 수 없다는 몇 가지 KB 기사가 반환 됩니다. 같은 페이지 에이 문제가 Excel 2010에서 해결되었지만 2010 버전을 사용하고 있으며 여전히 문제가 있음을 나타냅니다.

이에 대한 해결 방법이 있습니까? 모든 행을 대상 파일의 다른 섹션에 링크하려고하는데 1000 개 이상의 행이 있으므로 원래 html 파일을 여러 섹션으로 나누거나 각 섹션에 별도의 URL을 생성하고 대신 링크하면 혼란을 일으킬 수 있습니다. 파일.


지금은 테스트 할 수
없으므로이

방금 이것을 확인했는데 작동하지 않는 것 같습니다. Excel은 "지정된 파일을 열 수 없습니다"라는 오류 메시지를 표시합니다.
JohnoBoy

@terdon '파운드 기호 / 키'는 #문자 의 유효한 이름입니다. WikiPedia 기사를 참조하십시오 . 포럼 게시물과 이에 연결된 KB 기사도 같은 이름을 사용합니다.
JohnoBoy

@JohnoBoy입니다. 미안 해요 내 편집을 롤백하십시오.
terdon

답변:


2

이 시도. 각 행마다 두 개의 열이 필요합니다. 첫 번째는 각 행의 책갈피 이름을 포함합니다. 두 번째는 자체를 가리키는 하이퍼 링크를 포함합니다.

많은 행에 대해 자체 참조 하이퍼 링크를 삽입하려면 다음과 같이 매크로를 실행하십시오.

Sub AddHyperlinksPointingToOwnCell()

   For i = 1 To 100

   Range("A" & i).Select
   ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
       "Sheet1!A" & i, TextToDisplay:="Click Here!"

   ActiveCell.Offset(1, 0).Select

   Next i

End Sub

이제 브라우저를 올바른 위치로 열려면 서브가 필요합니다. 파일 및 브라우저 경로가 올바르도록 이것을 편집하십시오.

Sub GoToBookmark()

    Dim ThisRow As Integer
    Dim ThisCol As Integer
    Dim BookmarkName As String

    ThisRow = ActiveCell.Row
    ThisCol = ActiveCell.Column
    BookmarkName = Cells(ThisRow, ThisCol - 1).Value
        'This is looking in the cell to the left for the bookmark name

    If BookmarkName = "" Then
        Exit Sub
    End If

    Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE " & _
        "C:\PathRoot\Folder\filename.html#" & BookmarkName & ", vbNormalFocus"

End Sub

마지막으로 목록이 포함 된 시트에 Worksheet_FollowHyperlink 이벤트를 추가해야합니다.

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Run ("GoToBookmark")
End Sub

잘만되면 그것은 그것을해야한다!


감사합니다
JohnoBoy

@ JohnoBoy-이 작업이 효과가 있었습니까?
Johnny Utahh 2016 년

이것은 오래 전에 하이퍼 링크를 완전히 포기했다고 생각합니다.
JohnoBoy 2016 년

0

VBA 코딩을 사용하지 않으려는 경우 Excel 기능 "hyperlink"를 계속 사용할 수 있습니다. 여기 단계별 가이드가 있습니다.

온라인 파일 : 1 단계 : 파일 이름이 다음과 같다고 가정 해 봅시다 : http://en.wikipedia.org/wiki/Intel_Core 2 단계 : 이제 A1 : A4에 앵커 이름을 추가하십시오 . :




=HYPERLINK("http://en.wikipedia.org/wiki/Core_i3#"&A2,"A2")  

4 단계 : 클릭 & 드래그하여 세포의 나머지 부분에 대한 적용하는
작업을 테스트!


1
불행히도 kamalam, 원래 포스터는 C : 드라이브에서 로컬로 호스팅 된 파일에 대해이 작업을 수행하려고했습니다. 이 방법으로 다시 시도하면 file://C:/작동하지 않습니다. 그것이 효과가 있다면 훨씬 쉬울 것이기 때문에 부끄러운 일입니다!
Andi Mohr

또한, 이것은 웹에서도 작동하지 않습니다
Gerrat

-1

여기에 귀하의 질문을 잘 이해하고 있다면 해결 방법이 있습니다. Source = Here 해결 방법이 문제를 해결하려면 다음 방법 중 하나를 사용하십시오. 방법 1

파운드 기호를 포함하지 않는 이름으로 파일 이름을 바꾸고 하이퍼 링크를 편집하거나 다시 만드십시오.

Windows에서 파일 이름을 바꾸는 방법에 대한 자세한 내용은 Windows 인쇄 문서 또는 온라인 도움말을 참조하십시오.

하이퍼 링크를 편집하려면 다음 단계를 수행하십시오.

Office 2003 및 이전 버전의 Office : 문제가있는 하이퍼 링크가 포함 된 셀을 마우스 오른쪽 단추로 클릭하십시오. 나타나는 바로 가기 메뉴에서 하이퍼 링크를 가리키고 하이퍼 링크 편집을 클릭하십시오. 파일 또는 웹 페이지 이름 입력 상자에 연결하려는 파일 이름을 입력하십시오. 파일 이름을 모르면 파일을 클릭하고 파일을 찾으십시오. 확인을 클릭하십시오.

Office 2007 및 Office 2010 프로그램의 경우 : 문제가있는 하이퍼 링크가 포함 된 셀을 마우스 오른쪽 단추로 클릭 한 다음 하이퍼 링크 편집을 가리 킵니다. 주소 상자에 연결하려는 파일 이름을 입력하십시오. 파일 이름을 모르면 찾는 위치 ... 줄의 검색 도구를 사용하여 파일을 찾으십시오. 파일을 선택한 다음 확인을 클릭하십시오. 방법 2

하이퍼 링크로 붙여 넣기 명령을 사용하십시오.

Office 2003 및 이전 버전의 경우 : 연결하려는 문서를 엽니 다 (이름에 # 기호가 포함되어 있음). 연결할 셀을 복사하십시오. 문서의 편집 메뉴에서 하이퍼 링크로 붙여 넣기를 클릭하십시오.

Office 2007 및 Office 2010 프로그램 : 연결하려는 문서를 엽니 다. 이름에 # 기호가 포함 된 문서입니다. 연결할 셀을 복사하십시오. 문서에서 하이퍼 링크를 표시 할 셀을 클릭하십시오. 홈 탭의 클립 보드 그룹에서 붙여 넣기 아래에있는 화살표를 클릭 한 다음 하이퍼 링크로 붙여 넣기를 클릭합니다.

VBA 코드를 사용하는 경우이 줄은 그것을 테스트하는 데 도움이 될 수 있습니다 .chrome 및 firefox
ActiveSheet.Hyperlinks.Add Anchor : = Selection, Address : = "C : \ path \ to \ your \ file.htm"에서 작동합니다. , SubAddress : = "nameOfYourAnchor", TextToDisplay : = "표시 할 텍스트")

여기 nameOfYourAnchor w / O를 # 당신의 연결 인 경우, 예를 들어 Sym을 C : / 사용자 / [사용자] / 데스크탑 / 인텔 코어 - 위키 백과, 우리 모두의 encyclopedia.htm # Core_i3 코드 할 예정입니다 ( ActiveSheet.Hyperlinks.Add 앵커 : = 선택, 주소 : = "C : / Users / User / Desktop / Intel Core-Wikipedia, 무료 encyclopedia.htm", SubAddress : = "Core_i3", TextToDisplay : = "text to display" )
도움이 되었기를 바랍니다.


문제는 파일 이름에 파운드 기호가 포함되어 있지 않다는 것입니다. 파운드 기호를 사용하여 파일의 특정 섹션에 연결
JohnoBoy

2
마지막 두 단락을 살펴보십시오.
kamalam

@kamalam, 표면에 이것은 매우 깔끔한 솔루션입니다. 그러나이 코드를 작동시킬 수 없습니까? 당신에게 맞는 전체 서브를 게시 할 수 있습니까?
Andi Mohr

-1

다음은 일반적으로 Excel 2007이 설치된 Windows 7에서 작동합니다. 파일은 스프레드 시트와 함께 배치됩니다. 셀 내용 :

= HYPERLINK ( "dump_faults_current_leg_bite.htm # BiteRec_000", "BITE 레코드 1/35")

이 링크에 문제가있는 일부 데스크탑 PC가 있지만 "지정된 파일을 열 수 없습니다"오류가 발생합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.