Kann man in einer Excel Formel Prüfen ob ein Hyperlink funktioniert?
Möchte einen Hyperlink prüfen und gegebenenfalls bei nicht vorhandener Dateien auf einen anderen Pfad verweisen.
das ganze soll in einer Excel Formel geschehen bitte keine Makro vorschläge.
2 Antworten
Ohne Makro, nein.
Wäre ja auch ein Sicherheitsrisiko. Denn wenn Excel den Link prüft, muss Excel dem Link ja folgen, bzw. öffnen. Das könnte auch eine gefährliche Webseite sein oder eine schadhafte ausführbare Datei. Microsoft wird dieses Feature also so nicht von Haus aus anbieten.
Makros könnten das, aber die lehnst du ja bereits ab. Aber auch hier werden die Links geöffnet um sie zu prüfen, was dir im blödsten Fall Viren bescheren könnten.
Das mag sein. Das kann aber Microsoft nicht wissen was der Endanwender macht. Auch bei https können es bei Firmen Intranetseiten sein, die vertrauenswürdig sind. Aber auch das kann Microsoft nicht wissen.
Daher absolut nachvollziehbar, dass so ein Hyperlink Prüf-Feature erst garnicht eingebaut wird von Haus aus, um Schäden am Computer, dem gesamten Netzwerk, und daraus resultierenden Regressansprüchen am Ende zu vermeiden.
Ich würde es daher auch nicht reinprogrammieren. Das wäre ein viel zu großes Sicherheitsrisiko.
....direkt in einer Excel-Formel zu prüfen, ob ein Hyperlink funktioniert, ist nicht möglich. Excel-Formeln können keine Internetverbindung herstellen oder den Status eines Hyperlinks überprüfen.
Es gibt aber die Möglichkeit VBA zu verwenden falls Sie das in Betracht ziehen.
VBA Makro Vorschlag:
Zuerst eine Funktion definieren:
Function CheckHyperlink(link As String) As Boolean
Dim request As Object
Set request = CreateObject("MSXML2.XMLHTTP")
On Error GoTo ErrorHandler
request.Open "GET", link, False
request.send
If request.Status = 200 Then
CheckHyperlink = True
Else
CheckHyperlink = False
End If
Exit Function
ErrorHandler:
CheckHyperlink = False
End Function
aufgerufen wird diese Dann mit:
=CheckHyperlink(A1)
mit einer Wenn Anweisung können Sie dann eine Umleitung festlegen.
mfe
hmm schonmal nicht schlecht aber ich bräuchte das ganze nicht für https links. sondern um zu Prüfen ob eine Datei in einem Serverlaufwerk vorhanden ist (der Server wird durch eine Ordnerstruktur organisiert. ich schick dir mal ein bild
Function CheckFolder(folderPath As String) As Boolean
On Error Resume Next ' Fehlerbehandlung aktivieren
CheckFolder = (GetAttr(folderPath) And vbDirectory) = vbDirectory
On Error GoTo 0 ' Standardfehlerbehandlung wiederherstellen
End Function
aufruf:
=CheckFolder("\\Server\Ordnerpfad")
könntest du evtl. bitte die Freundschaftsanfrage annehmen damit ich dir ein Bild schicken kann. Bin sicher du bist auf den Richtigen weg bist, es wäre mir wahnsinnig wichtig. Vielen dank schonmal
Die Links sind da um durch eine Ordnerstruktur zu Navigieren in der Excel werden keine https:// links eingebettet