Worksheet.Hyperlinks property
워크시트의 하이퍼링크를 나타내는 Hyperlinks 컬렉션을 반환합니다.
Syntax
expression.Hyperlinks
expression Worksheet 개체를 나타내는 변수입니다.
다음은 워크시트 1의 하이퍼링크에 “Microsoft”라는 단어가 있는지 여부를 확인하는 예제입니다.
For Each h in Worksheets(1).Hyperlinks
If Instr(h.Name, "Microsoft") <> 0 Then h.Follow
Next
Worksheet.Hyperlinks 속성은 Hyperlinks 개체와 연관이 있으므로 같이 설명합니다.
Hyperlinks 개체
워크시트나 범위의 하이퍼링크 컬렉션을 나타냅니다.
속성
Application property
개체 한정자 없이 사용할 경우 Microsoft Excel 응용 프로그램을 나타내는 Application 개체를 반환합니다.
개체 한정자와 함께 사용할 경우에는 지정한 개체의 작성자를 나타내는 Application 개체를 반환합니다.
OLE 자동화 개체와 함께 이 속성을 사용하면 해당 개체의 응용 프로그램을 반환할 수 있으며 읽기 전용입니다.
Syntax
expression.Application
expression : Hyperlinks 개체를 나타내는 변수입니다.
다음 코드는 응용 프로그램 이름을 출력합니다.
Sub TestHyperlinkApplication()
Dim ws As Worksheet
' Sheet1 워크시트를 ws 변수에 할당
Set ws = Sheet1
' ws 변수에서 Hyperlinks 개체를 통해 응용 프로그램 이름을 출력
Debug.Print ws.Hyperlinks.Application.Name
' 변수 해제
Set ws = Nothing
End Sub
' Output
' Microsoft Excel
Count property
컬렉션의 개체 수를 나타내는 Long 값을 반환합니다.
Syntax
expression.Count
expression : Hyperlinks 개체를 나타내는 변수입니다.
예제
1. 특정 시트에 있는 모든 하이퍼링크 개수 출력하기
Sub PrintHyperlinkCountInWorksheet()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
Debug.Print "Sheet1에 있는 하이퍼링크 수: " & ws.Hyperlinks.Count
End Sub
2. 특정 범위에 있는 하이퍼링크 개수 출력하기
Sub PrintHyperlinkCountInRange()
Dim rng As Range
Set rng = ThisWorkbook.Sheets("Sheet1").Range("A1:A10")
Debug.Print "A1:A10 범위 내의 하이퍼링크 수: " & rng.Hyperlinks.Count
End Sub
Creator property
이 개체가 생성된 애플리케이션을 나타내는 32비트 정수를 반환합니다. 읽기 전용인 Long 형식입니다.
Syntax
expression.Creator
expression : Hyperlinks 개체를 나타내는 변수입니다.
비고
Microsoft Excel에서 개체를 만든 경우 16진수 5843454C와 같은 XCEL 문자열을 반환합니다. Creator 속성은 Macintosh용 Microsoft Excel에서 사용하도록 설계되었으며 각각의 응용 프로그램에는 4문자로 된 작성자 코드가 있습니다. 예를 들어 Microsoft Excel의 작성자 코드는 XCEL입니다.
Sub GetHyperlinkCreator()
Dim ws As Worksheet
Set ws = Sheet1
Debug.Print ws.Hyperlinks.Creator
Set ws = Nothing
End Sub
' Output
' 1480803660
Item property
컬렉션에서 단일 개체를 반환합니다.
Syntax
expression.Item (Index)
expression : Hyperlinks 개체를 나타내는 변수입니다.
매개변수
Index : 필수입니다. 개체의 이름이나 인덱스 번호입니다.(데이터 형식 : Variant)
예제
1. 하이퍼링크가 존재할 경우 n번째 하이퍼링크의 주소를 출력
Sub PrintSecondHyperlinkAddress()
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If ws.Hyperlinks.Count > 0 Then
Debug.Print ws.Hyperlinks(2).Address
else
End If
Set ws = Nothing
End Sub
2. 하이퍼링크가 존재하는 경우 웹으로 열기
Sub FollowRandomHyperlink()
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If ws.Hyperlinks.Count > 0 Then
ws.Hyperlinks(1).Follow
Else
End If
Set ws = Nothing
End Sub
Parent property
지정한 개체의 부모 개체를 반환하며 읽기 전용입니다.
Syntax
expression.Parent
expression : Hyperlinks 개체를 나타내는 변수입니다.
예제
Sub GetHyperlinkParentName()
Dim ws As Worksheet
Set ws = Sheet1
' ws 변수에서 Hyperlinks 개체를 통해 부모 개체(워크시트)의 이름을 출력
Debug.Print ws.Hyperlinks.Parent.Name
' 변수 해제
Set ws = Nothing
End Sub
' Output
' Sheet1
메서드
Add method
지정한 범위나 도형에 대한 하이퍼링크를 추가합니다.
Syntax
expression.Add (Anchor, Address, SubAddress, ScreenTip, TextToDisplay)
Anchor : 필수입니다. 하이퍼링크에 대한 앵커입니다.Range나 Shape 개체를 사용할 수 있습니다.(데이터 형식 : Object)
Address : 필수입니다. 하이퍼링크의 주소입니다.
SubAddress : 하이퍼링크의 하위 주소입니다.
ScreenTip : 마우스 포인터를 하이퍼링크 위에 올리면 표시될 스크린 팁입니다.
TextToDisplay : 하이퍼링크로 표시될 텍스트입니다.
반환 값
새 하이퍼링크를 나타내는 Hyperlink 개체입니다.
비고
TextToDisplay 인수 지정 시 텍스트는 문자열이어야 합니다.
예제
다음 코드는 하이퍼링크 만드는 법을 보여줍니다.
Sub AddHyperlink()
Dim ws As Worksheet
Dim rng As Range
Dim hyperlinkAddress As String
Dim hyperlinkScreenTip As String
Dim hyperlinkTextToDisplay As String
' 워크시트를 Worksheets(1)에 할당
Set ws = Worksheets(1)
' 하이퍼링크 정보 설정
hyperlinkAddress = "https://www.microsoft.com"
hyperlinkScreenTip = "Microsoft Web Site"
hyperlinkTextToDisplay = "Microsoft"
' A1 셀에 하이퍼링크 추가
Set rng = ws.Range("A1")
ws.Hyperlinks.Add _
Anchor:=rng, _
Address:=hyperlinkAddress, _
ScreenTip:=hyperlinkScreenTip, _
TextToDisplay:=hyperlinkTextToDisplay
Set ws = Nothing
Set rng = Nothing
End Sub
Delete method
개체를 삭제합니다.
Syntax
expression.Delete
expression : Hyperlinks 개체를 나타내는 변수입니다.
비고
지정된 하이퍼링크 객체에서 삭제 메서드를 호출하는 것은 홈 탭의 편집 섹션에 있는 지우기 드롭다운 목록에서 하이퍼링크 지우기 및 서식 지우기 명령을 모두 사용하는 것과 동일합니다. 하이퍼링크만 제거되는 것이 아니라 셀 서식도 제거됩니다. 하이퍼링크만 제거하려면 Range.ClearHyperlinks 메서드를 사용합니다.
위 명령을 매크로 기록한 코드입니다.
Sub Macro1()
'
' Macro1 Macro
'
'
Range("A1:A2").Select
Selection.Hyperlinks.Delete
End Sub
조금 다듬은 코드입니다.
Sub DeleteHyperlink()
Dim ws As Worksheet
' 워크시트를 Worksheets(1)에 할당
Set ws = Worksheets(1)
' 하이퍼링크 삭제
ws.Hyperlinks.Delete
Set ws = Nothing
End Sub
도움말 출처
Hyperlinks object (Excel)
Office VBA reference topic
learn.microsoft.com
'Worksheet object' 카테고리의 다른 글
Worksheet.Name속성 (0) | 2023.09.06 |
---|---|
시트 삭제하기 (0) | 2023.09.05 |
Columns 속성 (0) | 2023.09.03 |
CodeName 속성 (0) | 2023.09.03 |
Cells 속성 (0) | 2023.09.02 |