ich suche leider vergebens nach einer Lösung per VBA aus einem
bestimmten Verzeichnispfad eine auswählbare Datei als Hyperlink in ein
Tabellenblatt einzufügen.
Das was mir aus dem Forum zusagen würde sieht folgendermassen aus:
Wie muss man das Makro ändern um direkt auf den gewünschten Pfad zu
gelangen z.B.: C\Test\Variante\ um da dann eine Datei für den Link
auswählen zu können.
Sub NeueLinks()
Dim NeueDateien As Variant, i As Long, z As Long, s As Long
NeueDateien = Application.GetOpenFilename("Files (*.*), *.*", ,
"Dateilink", "Einfügen", True)
If IsArray(NeueDateien) Then
s = ActiveCell.Column
z = Cells(ActiveSheet.Rows.Count, s).End(xlUp).Row
If Not (IsEmpty(Cells(z, s))) Then z = z + 1
For i = LBound(NeueDateien) To UBound(NeueDateien)
Cells(z, s).Hyperlinks.Add Cells(z, s), NeueDateien(i)
z = z + 1
Next
End If
End Sub
Bitte um einen Tipp wie die Lösung aussehen könnte.
Gruß Erich
hallo Erich, teste mal dieses:
Sub NeuerLink()
Dim NeueDatei
ChDir "C\Test\Variante\"
NeueDatei = Application.GetOpenFilename _
("Files (*.*), *.*", , "Dateilink", "Einfügen")
ActiveSheet.Hyperlinks.Add _
Anchor:=Selection, Address:=NeueDatei
End Sub
ChDir wechselt in das Verzeichnis, ggfls ist zusätzlich ein ChDrive
notwendig, wenn auch das Laufwerk geändert werden soll.
Der Link wird in die aktive Zelle (Selection) eingefügt, dass lässt
sich aber anpassen.
Gruß
stefan
supi, vielen Dank genau das habe ich gesucht.
Trotzdem noch eine Frage, wie bekomme ich den Link ohne die Pfadangabe,
also nur den Link der Datei. Ist das auch möglich?
Gruß und schönen Abend
Erich
"stefan onken" <steo...@web.de> schrieb im Newsbeitrag
news:f8597563-bc86-448b...@b64g2000hsa.googlegroups.com...
hallo Erich,
dafür kannst du TextToDisplay nutzen. Zusätzlich noch eine
Überprüfung, ob im Dateiauswahl-Dialog nicht Abbrechen geklickt wurde.
Sub NeuerLink()
Dim NeueDatei
ChDir "d:\Test\"
NeueDatei = Application.GetOpenFilename _
("Files (*.*), *.*", , "Dateilink", "Einfügen")
If Not NeueDatei = False Then
ActiveSheet.Hyperlinks.Add _
Anchor:=Selection, _
Address:=NeueDatei, _
TextToDisplay:=Dir(NeueDatei)
End If
End Sub
Gruß
stefan
das ist richtig gut...und so einfach...wenn man es weiss.
Vielen Dank an Dich und dieses tolle Forum.
Gruss
Erich