웹 페이지 제목을 Excel로 가져 오기


3

다른 Excel 셀에 채워진 내용을 기반으로 하이퍼 링크를 가져 오는 셀을 만들려고합니다. 하이퍼 링크 부분이 작동하지만 웹 페이지 또는 전체 웹 주소를 가져 오는 데 사용하는 ID보다 하이퍼 링크 레이블이 더 좋습니다. 웹 페이지 제목을 입력하는 것이 가장 쉽다고 생각했습니다. 이게 가능해?

약간 도움이 될 수 있습니다. 현재이 기능을 사용하여 웹 주소를 가져옵니다.

=IF(LEN(Excel Cell Value)>0,HYPERLINK(CONCATENATE("First part of the web address",(Excel Cell Value),"Second part of the web address"),Excel Cell Value),"")


Spreedsheet를 사용하려는 모든 사람이 추가 기능을 다운로드하지 않아도되기를 원하기 때문에 base excel 만 사용하는 것이 좋습니다.
Sam

답변:


2
=IF(LEN(Excel Cell Value)>0,HYPERLINK(CONCATENATE("First part of the web address",(Excel Cell Value),"Second part of the web address"),Excel Cell Value),"")

나는 이것을 이해하지 못한다. 그것을 분해하려고합니다-

If(Len(cell value)>0) - if the cell isn't empty, do TRUE
TRUE - Hyperlink(Concatenate(first, (cell value), second), (cell value)
FALSE - ""

이제 하이퍼 링크가 어떻게 작동하는지 봅시다

Hyperlink(link location, friendly name)

당신을 위해 이것은

link location = concatenate(first, value, second)
friendly name = value

친숙한 이름을 셀 값으로 지정하고 있습니다. 따라서 다음과 같은 것이 없다면-

A1 = Google
A2 = Hyperlink(Concatenate("https://www.",A1,".com",A1))

A2 = 구글

작동하지 않습니다. 당신이 할 수있는 유일한 일은 VBA를 사용하여 페이지로 이동하여 정보를 수집하거나 다음과 같은 것을 사용하는 것입니다.

A1 = Google
A2 = Searching Website
A3 = Hyperlink(Concatenate("https://www.",A1,".com",A2))

A3 = 웹 사이트 검색


VBA를 통해 타이틀을 얻으려면-

Sub gettitle()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.navigate "http://superuser.com/"
While ie.busy
 DoEvents
Wend

Dim title As String
title = ie.document.title

MsgBox (title)
End Sub

자, 함수가 제목과 함께 하이퍼 링크를 반환하게하려면 사용자 정의 함수 (UDF)가 필요합니다.

Function GetTitle(site As Range) As String
Dim title As String
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.navigate site

While ie.busy
 DoEvents
Wend
title = ie.document.title
ie.Quit
GetTitle = title
End Function

웹 페이지 타겟으로 이동하여 제목을 반환합니다. 이제 셀에 웹 페이지가 있다고 가정 해 봅시다. A1이제 제목에 대한 함수를 호출해야합니다.

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