HYPERLINK per Formel kopieren.
#11
Hallo Daniel

Danke für Deine schnelle Antwort aber leider stehe ich gerrade auf dem Schlauch und habe deshalb eine Testdatei mit drei Zeilen erstellt.
Es wäre für mich und sicher auch für weitere Intressenten eine große Hilfe wenn Du meine Datei entsprechend ändern würdest um mein Problem zu lösen.


Angehängte Dateien
.xlsx   Link_Test.xlsx (Größe: 37,58 KB / Downloads: 4)
MfG Peter

WIN 10  /  MS 365
Antworten Top
#12
so.

.xlsx   Link_Test.xlsx (Größe: 38,46 KB / Downloads: 5)
wie gesagt, Hyperlink ist zickig.
Antworten Top
#13
Hallo Peter,
 
ich an deiner Stelle würde die Tabelle in Spalte A bis C einfach als Listobjekt (formatierte Tabelle) anlegen und den Filter zum Sortieren nutzen.
 
Wenn es ums lernen und üben mit Formeln geht vielleicht folgendes:
Das was du suchst existiert als Formel nicht. Aber man kann dies via UDF nachprogrammieren um aus der passenden Zelle in Spalte A den Link zu extrahieren.
 
Wenn es dich interessiert wie man so was macht melde dich dann einfach noch mal.
 
Gruß Uwe
Antworten Top
#14
Ich habe grad festgestellt, dass in deinem Fall man die Formel auslesen muss, um an den Link zu kommen, also nicht via .HyperLinks.

Die UDF wäre so:
Code:
Function LINKLESEN(SpLink As Range, Zelle As Range)
    Dim iZ As Variant
    iZ = Application.Match(Zelle.Text, SpLink, 0)
    If Not IsError(iZ) Then
        LINKLESEN = Left(Replace(SpLink.Cells(iZ, 1).FormulaLocal, "=HYPERLINK(""", ""), Len(Replace(SpLink.Cells(iZ, 1).FormulaLocal, "=HYPERLINK(", "")) - 2)
    End If
End Function

Die Formel in Zelle I1 und runterziehen:
Code:
=LINKLESEN(A6:A8;F6)
Somit erhälst du deinen Link ausgegeben.

Gruß Uwe
Antworten Top
#15
Hallo Daniel

Danke für die modifizierte Datei. Bei dieser Gelegenheit habe ich wieder einiges dazu gelernt.
Deine Lösung funktioniert nur EXCEL meint jetzt es müsse mich darauf hinweisen dass es sich
eventuell um eine unsichere Adresse handle.
Du hast völlig recht. HYPERLINK ist zickig und deshalb mache ich an dieser Angelegenheit nicht weiter.
MfG Peter

WIN 10  /  MS 365
Antworten Top
#16
schön, das es jetzt funktioniert.

damit ich auch was lerne: 
die Datei ist genau das, was ich in meiner ersten Antwort beschrieben habe.
Daher stellt sich für mich die Frage, welchen Teil von
Zitat:1. deine erzeugte Liste muss in einer Spalte die Linkadressen als angezeigten Text enthalten
du nicht verstanden hast und wie ich das hätte für dich formulieren müssen, damit du es verstehst und umsetzen kannst, ohne dass ich erst noch eine Beispieldatei erstellen muss?
Antworten Top
#17
Hallo Uwe

Auch Dir ein Danke für Deine Hilfe.
Eigendlich wollte ich nicht mit VBA Code mein Problem lösen aber ich werde trotzdem eine Testdatei mit Deinem Code anlegen
und somit noch etwas VBA lernen.

Hallo Daniel
Es liegt nicht an Deiner Beschreibung. Jetzt wo ich die Testdatei gesehen habe, habe ich
mit dem Text  die Linkadressen als angezeigten Text  begriffen was Du damit meintest.

Also Du hast keine schuld an meiner Begriffstutzigkeit.
MfG Peter

WIN 10  /  MS 365
Antworten Top
#18
Hallo Uwe

Ich habe soeben Deinen Code in meine Testdatei kopiert und als .xlsm Datei abgespeichert.
Auch die Formel =EINLESEN(A6:A8;F6) habe ich in die Zelle I6 kopiert.
Wenn ich mit meinen geringen VBA Kenntnissen Deinen CODE richtig interpretiere müsste dann z.B. in Zelle I6 folgendes stehen.  
=HYPERLINK("[D:\Tabellendokumente\Pri\Eismann_Produkte.xlsm]Katalog!B4";"Eismann_Produkte")
Dem ist leider nicht so (siehe beigefügte Testdatei) oder liege ich da falsch.
Es wäre schön wenn Du mir den Code korrigieren würdest denn meine VBA Kenntnisse reichen dazu nicht aus.


Angehängte Dateien
.xlsm   Link_Test.xlsm (Größe: 43,32 KB / Downloads: 2)
MfG Peter

WIN 10  /  MS 365
Antworten Top
#19
Hallo Peter,

an der UDF braucht es keine Änderungen. Dies ist eine selbsterzeugte Formelfunktion. Erweitere die Formel einfach so:
Code:
=HYPERLINK(LINKLESEN(A6:A8;F6);F6)
Damit hast du was du suchst.

Was findet in der UDF statt:

im Bereich A6:A8 wird die Zeilennummer gesucht, welche den Text in F6 enthält. Anhand der Zeilennummer wird der Link ausgelesen und als String zurückgegeben. Somit steht dir alles zur Verfügung, was du brauchst um via =Hyperlink() den dazugehörigen Link zu erzeugen.

Lernaufgabe: Baue in die Formel aus F6 passend in die Hyperlinkformel ein und du brauchst keine zusätzliche Spalte mehr für den Link.

Gruß Uwe
Antworten Top
#20
Hallöchen,

mal eine Variante die zumindest den Hyperlink anzeigt Wink

=SORTIEREN(SPALTENWAHL(FILTER(WENNFEHLER(FORMELTEXT($A$6:$C$10);$A$6:$C$10);$A$6:$A$10<>"");3;1;2);2;1)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste