Microsoft Excel

Herbers Excel/VBA-Archiv

Blätter mit generierten Hyperlinks einblenden


Betrifft: Blätter mit generierten Hyperlinks einblenden
von: Chris
Geschrieben am: 28.11.2018 12:10:55

Hi zusammen,

ich hatte dieses Thema schon mal gepostet und auch bereits von Herbert Grom einiges an Hilfe bekommen (danke nochmal dafür!). Leider habe ich noch nicht die endgültige Lösung gefunden. Was wohl auch an meiner Beschreibung des Themas lag!

Zuletzt hatte mir Herbert folgenden Code gebaut:

Sub Main()
   Dim lngTMP As Long, sTxt$, sWks$, sRng$, iPos%
   On Error GoTo ende
   Application.EnableEvents = False
      For lngTMP = 5 To Cells(Rows.Count, 3).End(xlUp).Row
         sTxt = Split(Split(Cells(lngTMP, 3).Formula, "(""")(1), """")(0)
         iPos = InStr(1, sTxt, "!")
         sWks = Left(sTxt, iPos - 1)
         sRng = Mid(sTxt, iPos + 1, 100)
         Cells(lngTMP, 4).Value = Sheets(sWks).Range(sRng)
         
      Next lngTMP
ende:
   Application.EnableEvents = True
End Sub

Dieser zerlegt eine =Hyperlink() Formel in Spalte C in einen Text in Spalte D. Der Text soll auch genauso in Spalte D stehen, nur eben als Hyperlink. Das Problem ist, dass ich einen reinen Hyperlink für ein anderes Makro in Spalte D benötige, welches eben nicht mit einem durch die Formel =Hyperlink() generierten Hyperlink arbeiten kann.

Somit soll also der Text wie er durch das oben stehende Makro in Spalte D geschrieben wird, dort als Hyperlink stehen (Address) und als Subaddress soll "#'" & "Text aus Spalte D" & "'!A1" stehen.

Vielen Dank für Eure Unterstützung!

Beste Grüße

  

Betrifft: AW: Blätter mit generierten Hyperlinks einblenden
von: Zwenn
Geschrieben am: 28.11.2018 14:08:04

Hallo Chris,

mit dem folgenden kleinen Makro werden alle markierten Zellen in einer Spalte mit dem Link aus der jeweils links daneben stehenden Zelle versehen. Dabei wird der Text in den markierten Zellen als Anzeigentext in der Zelle belassen. Beachte bitte, dass Links ins Internet zwingend mit http:// bzw. https:// beginnen müssen. Sonst funktionieren Sie aus Excel heraus nicht.

Sub LinksAusZellenBilden()
  For Each cell In Selection
    ActiveSheet.Hyperlinks.Add Anchor:=cell, _
                               Address:=cell.Offset(0, -1).Value, _
                               TextToDisplay:=cell.Value
  Next
End Sub

Viele Grüße,

Zwenn