ich bräuchte mal einen Denkanstoss respektive Eure Hilfe.
Ich habe mir eine
Sub zusammengebaut, welche aus einem Pfad (dieser befindet sich in Spalte A) alle pdf-datein _
sucht und diese dann als kleines Bild mit hinterlegtem Hyperlink in die zugehörige Zeile _
ausgibt.
Nun möchte ich zusätzlich auch noch weitere files (*.doc, *.xls, etc.) auf selbe Art aufführen. _
_
Der Knackpunkt ist für mich unter anderem auch die zuordnung des zugehörigen Icon-Pics.
Kann mir jemand sagen, ob ich den Dir()befehl mit zusätzlichen Dateitypen (und natürlich _
entsprechendem Icon) erweitern kann bzw. wie eine Schleife aussehen müsste? Und als i-Tü _
pfelchen wäre natürlich der Hammer, wenn die Auflistung "sortiert" wäre...also erst alle pdf-Links, dann die doc-Links, usw. Ich hoffe, dass ich mich nicht allzu unverständlich ausgedrückt habe :-)
Der
Sub für ein Typ wäre der folgende:
Sub Hyperlink()
Dim Icon As Picture
Dim PDFpfad As String
Dim DOCpfad As String
Dim XLSpfad as String
Dim i%, Gr%
Dim FN$, Pfad$, Ext$
Dim Obj(100)
PDFpfad = "C:\Users\Icons\file-pdf-icon.png"
DOCpfad = "C:\Users\Icons\file-code-icon.png"
XLSpfad = "......."
Dim k%, lz%
With ThisWorkbook.ActiveSheet
lz = .Cells(Rows.Count, 1).End(xlUp).Row
For k = 2 To lz
Pfad = .Cells(k, 1)
Ext = "*.pdf"
FN = Dir(Pfad & Ext)
Gr = 25
i = 1
With ThisWorkbook.ActiveSheet
.Cells(k, 8).Select
Do While Len(FN) > 0
Set Obj(i) = ActiveSheet.Pictures.Insert(PDFpfad)
With Obj(i)
.Height = Gr
.ShapeRange.Top = ActiveSheet.Cells(k, 8).Top + (ActiveSheet.Cells(k, 8).Height - Obj( _
_
i).ShapeRange.Height) / 2
.ShapeRange.IncrementLeft (i - 1) * (Gr + 5)
End With
With ThisWorkbook.ActiveSheet
.Hyperlinks.Add Anchor:=.Shapes(Obj(i).Name), Address:=Pfad & FN, ScreenTip:=FN
End With
FN = Dir()
i = i + 1
Loop
End With
Next k
End With
End Sub
Ich freue mich sehr über Eure Denkanstösse!