Excel 2016. 하이퍼링크 셀을 텍스트로 만들려면 어떻게 해야 하나요?

Excel 2016. 하이퍼링크 셀을 텍스트로 만들려면 어떻게 해야 하나요?

모두 하이퍼링크로 구성된 텍스트 열이 있습니다. 텍스트와 URL을 별도의 필드에 복사하고 싶습니다.

예를 들어 셀(A1)에는 "Apple"이 있습니다(하이퍼링크:http://www.apple.com)

D와 E에 값을 넣고 싶습니다.

D1에는 "Apple"이 포함됩니다.

E1에는 URL이 포함됩니다.http://www.apple.com

Function GetURL(HyperlinkCell As Range)
    GetURL = Replace(HyperlinkCell.Hyperlinks(1).Address, "file:", "")
End Function

ThisWorkbook(VBA)에서 이것을 시도했고 결과는 다음과 같습니다.#이름?내 스프레드시트에

답변1

당신은 당신의 기능을표준 모듈:

여기에 이미지 설명을 입력하세요

그러면 작동합니다.

여기에 이미지 설명을 입력하세요

답변2

코드를 일반 모듈에 배치해야 합니다.

  • VBE에서 프로젝트를 마우스 오른쪽 버튼으로 클릭하세요.
  • 삽입: 모듈
  • (선택사항) 모듈에 더 합리적인 이름을 지정하세요.

거기에 코드를 잘라내어 붙여넣으세요. 그러면 잘 작동할 것입니다!

의도를 좀 더 명확하게 하기 위해 함수 헤더를 명시적으로 함수로 선언하고 Public(아무것도 변경하지 않을 것이라고 명시하지 않지만 일부 사람들은 암시적으로 변경한다고 가정함 Private) 반환 유형을 다음과 같이 설정하여 확장할 수 있습니다 String.

Public Function GetURL(HyperlinkCell As Range) as String

Hyperlink 속성에는 문자열만 포함되므로 UDF에서 이를 명시적으로 설정하는 데 아무런 문제가 없습니다.

관련 정보