
Ich versuche, eine Zelle zu erstellen, die einen Hyperlink basierend auf dem einfügt, was in einer anderen Excel-Zelle eingetragen ist. Der Hyperlink-Teil funktioniert, aber ich hätte gerne eine bessere Bezeichnung für den Hyperlink als die ID, die zum Abrufen der Webseite verwendet wird, oder die gesamte Webadresse. Ich dachte, es wäre am einfachsten, zu versuchen, den Titel der Webseite einzufügen. Ist das möglich?
Vielleicht um ein wenig zu helfen, ich benutze derzeit diese Funktion, um die Webadresse einzuziehen
=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),"")
Antwort1
=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),"")
Ich verstehe das nicht. Ich versuche es mal zu erklären -
If(Len(cell value)>0) - if the cell isn't empty, do TRUE
TRUE - Hyperlink(Concatenate(first, (cell value), second), (cell value)
FALSE - ""
Sehen wir uns nun an, wie Hyperlinks funktionieren
Hyperlink(link location, friendly name)
Für Sie ist das
link location = concatenate(first, value, second)
friendly name = value
Sie weisen den Anzeigenamen als Zellenwert zu. Wenn Sie also nichts haben wie -
A1 = Google
A2 = Hyperlink(Concatenate("https://www.",A1,".com",A1))
A2 =Google
Das funktioniert nicht. Sie können nur VBA verwenden, um auf die Seite zu gelangen und Informationen zu sammeln, oder etwas wie Folgendes verwenden:
A1 = Google
A2 = Searching Website
A3 = Hyperlink(Concatenate("https://www.",A1,".com",A2))
So erhalten Sie den Titel über 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
Okay, damit eine Funktion den Hyperlink mit dem Titel zurückgibt, benötigen Sie eine benutzerdefinierte Funktion (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
Dadurch wird das Ziel der Webseite aufgerufen und der Titel zurückgegeben. Angenommen, Sie haben eine Webseite in der Zelle. A1
Jetzt müssen Sie Ihre Funktion für den Titel aufrufen.
A2 = GetTitle(A1)
A3 = Hyperlink(A1,A2)