Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hyperlink in Zelle schreiben aus Textbox-Input

Forumthread: Hyperlink in Zelle schreiben aus Textbox-Input

Hyperlink in Zelle schreiben aus Textbox-Input
02.04.2014 23:12:05
Thorsten
Guten Abend an alle, die mehr drauf haben als ich (also ALLE :_) )
Warum z.T. (sorry) funktioniert denn der unten zu sehende Code nicht? Ich möchte damit das, was in einer TextBox eingetragen wird, in eine Arbeitsmappe schreiben und dann einen Hyperlink zu einer Datei auf meinem Rechner darauf setzen.
Das funktioniert sogar ( Ole Ole! ), solange keine Leerzeichen vorkommen in der TextBox. Das kapier ich auch noch, denn ein Hyperlink enthält ja in der Regel keine Leerzeichen (bei Textdateien allerdings sehr wohl).
Deshalb habe ich das Script auch erweitert und alle Leerzeichen durch "%20" ersetzt.
Funktioniert aber trotzdem nicht. Excel gibt mir immer einen Laufzeitfehler.
Was z.T. (sorry nochmal) mache ich denn falsch?
LG
Thorsten
Private Sub CommandButton1_Click()
Dim strTitle As String
Dim strHyperAlt As String
Dim strHyperNeu As String
strTitel = UserForm1.TextBox1.Value
Range("A1").Activate
ActiveCell.Value = strTitel
MsgBox (strTitel)
strHyperAlt = strTitel
MsgBox "strHyperAlt is now " & strHyperAlt
strHyperNeu = Replace(strHyperAlt, " ", "%20")
MsgBox "strHyperNeu is now " & strHyperNeu
ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:="\\" & strHyperNeu & ".pdf", ScreenTip:= _
"open pdf", TextToDisplay:=strHyperNeu  ' Laufzeitfehler -- Debugging
UserForm1.Hide
End Sub

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hyperlink in Zelle schreiben aus Textbox-Input
03.04.2014 06:46:52
Hajo_Zi
vielleicht reicht ' vor und nach dem Ausdruck.

AW: Hyperlink in Zelle schreiben aus Textbox-Input
03.04.2014 12:51:06
Thorsten
hi hajo.
Ganz am Anfang ja ? ;)))) DAS hilft bestimmt. Lach. Aber im Ernst : Wo genau würdest Du das Zeichen ' platzieren wollen ?
LG
T.

Anzeige
AW: Hyperlink in Zelle schreiben aus Textbox-Input
03.04.2014 12:54:06
Hajo_Zi
& "'" & strHyperNeu & "'"&
Gruß Hajo

AW: Hyperlink in Zelle schreiben aus Textbox-Input
03.04.2014 14:03:17
Thorsten
Hi Hajo!
Schönen Danke für die schnelle Antwort.
Die Zeile sieht jetzt so aus:
ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:="\\" & "'" & strHyperNeu & "'" & ".pdf", ScreenTip:="open pdf", TextToDisplay:=strHyperNeu
Leider funktioniert es so auch nicht. Laufzeitfehler 1004. Anwendungs- oder objektorientier Fehler.

Anzeige
AW: Hyperlink in Zelle schreiben aus Textbox-Input
04.04.2014 13:05:28
fcs
Hallo Thorsten,
ich denke das Erstellen der Hyperlinks scheitert an einer falschen Pfadangabe für den Hyperlink.
Wenn deine Hyperlinkadressen immer mit "\\" beginnen, dann muss die Variable strHyperNeu den Servernamen in einem Netztwerk und den kompletten Verzeichnispafad + den Dateinamen ohne ".pdf" enthalten.
Und die Datei zum Hyperlink muss schon existieren!!!
Die Leerzeichen spielen bei Hyperlinks auf Dateien eigentlich keine Rolle. Diese werden ggf. relevant, wenn man Internetdeiten via Hyperlink in einem Browser anzeigen möchte.
Gruß
Franz

Anzeige
AW: Hyperlink in Zelle schreiben aus Textbox-Input
03.04.2014 12:51:23
Thorsten
hi hajo.
Ganz am Anfang ja ? ;)))) DAS hilft bestimmt. Lach. Aber im Ernst : Wo genau würdest Du das Zeichen ' platzieren wollen ?
LG
T.
;
Anzeige
Anzeige

Infobox / Tutorial

Hyperlink in Excel-Zelle aus Textbox erstellen


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Arbeitsmappe und füge ein UserForm hinzu.

  2. Füge eine TextBox und einen CommandButton in das UserForm ein.

  3. Kopiere den folgenden VBA-Code in das Code-Fenster des UserForms:

    Private Sub CommandButton1_Click()
       Dim strTitle As String
       Dim strHyperAlt As String
       Dim strHyperNeu As String
    
       strTitle = UserForm1.TextBox1.Value
       Range("A1").Activate
       ActiveCell.Value = strTitle
    
       strHyperAlt = strTitle
       strHyperNeu = Replace(strHyperAlt, " ", "%20")
    
       ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:="\\" & strHyperNeu & ".pdf", ScreenTip:= _
       "open pdf", TextToDisplay:=strHyperNeu
    
       UserForm1.Hide
    End Sub
  4. Teste die Anwendung, indem du einen Text in die TextBox eingibst und auf den Button klickst. Achte darauf, dass die Datei, auf die du verlinken möchtest, bereits existiert.


Häufige Fehler und Lösungen

  • Laufzeitfehler 1004: Dieser Fehler tritt häufig auf, wenn die Pfadangabe für den Hyperlink nicht korrekt ist. Stelle sicher, dass die Variable strHyperNeu den vollständigen Pfad zur Datei enthält, ohne dass sie mit "\" beginnt, es sei denn, es handelt sich um einen Netzwerkpfad.

  • Fehlende Datei: Vergewissere dich, dass die Datei, auf die du verlinken möchtest, tatsächlich existiert. Der Hyperlink kann nicht erstellt werden, wenn die Datei nicht vorhanden ist.

  • Leerzeichen im Link: Wenn du Leerzeichen im Hyperlink hast, ersetze sie durch "%20". Dies ist besonders wichtig, wenn du Links zu Internetseiten erstellen möchtest.


Alternative Methoden

Eine alternative Methode besteht darin, Hyperlinks direkt in die Zelle einzufügen, anstatt sie über ein UserForm zu erstellen. Du kannst den Hyperlink direkt in die Zelle eingeben, indem du die Funktion HYPERLINK verwendest:

=HYPERLINK("\\Pfad\zur\Datei.pdf", "Linktext")

Diese Methode ist einfacher, wenn du keine Benutzerinteraktion benötigst.


Praktische Beispiele

  1. Hyperlink zu einer lokalen Datei:

    • Wenn du eine Datei mit dem Namen Beispiel.pdf im Ordner Dokumente hast, kannst du den folgenden Code verwenden, um den Hyperlink zu erstellen:
    ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:="C:\Users\DeinBenutzername\Documents\Beispiel.pdf", TextToDisplay:="Beispiel PDF"
  2. Hyperlink zu einer Webseite:

    • Um einen Link zu einer Webseite zu erstellen, kannst du den Code wie folgt anpassen:
    ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:="http://www.example.com", TextToDisplay:="Besuche Example"

Tipps für Profis

  • Verwende Fehlerbehandlung: Implementiere On Error Resume Next, um Laufzeitfehler abzufangen und eine bessere Benutzererfahrung zu bieten.

  • Dynamische Pfade: Wenn du oft arbeitest, erwäge das Erstellen von Variablen für Pfade, um den Code flexibler zu gestalten.

  • Formatierung: Achte darauf, die Zelle, in der der Hyperlink eingefügt wird, entsprechend zu formatieren, damit sie klar als Link erkennbar ist.


FAQ: Häufige Fragen

1. Warum funktioniert mein Hyperlink nicht?
Der häufigste Grund ist ein falscher Pfad oder dass die verlinkte Datei nicht existiert. Überprüfe den Pfad und die Existenz der Datei.

2. Welche Excel-Version benötige ich?
Der vorgestellte Code sollte in den meisten modernen Excel-Versionen funktionieren, einschließlich Excel 2010 und höher.

3. Wie kann ich Leerzeichen im Hyperlink vermeiden?
Ersetze Leerzeichen durch "%20" in der URL, um sicherzustellen, dass der Hyperlink korrekt funktioniert.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige