Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Excel: Hyperlinks automatisch generieren





Frage

Hallo zusammen, ich habe folgendes Problem: Ich möchte in einer Excel-Tabelle mit ca. 3.500 Zeilen automatisch Hyperlinks zu PDF-Files erstellen. Der Name des PDF-Files ist ein 6-stelliger Zahlencode, der auch in jeder Zeile der Tabelle steht. Kleine Einschränkung meinerseits: ich kann leider keine VBA-Programmierung. D.h. vielleicht könnt ihr mir ein gutes Buch zum Selbststudium empfehlen. Ich hoffe auf eine positive Antwort von Euch und vielen Dank schonmal im Voraus! Andreas

Antwort 1 von M.O.

Hallo Andreas,

das geht auch ohne VBA mit der Funktion Hyperlink:

=HYPERLINK("C:\"&A1&".pdf";A1)

In A1 steht der Dateiname. Den Pfad musst du entsprechend anpassen. Du kannst den Pfad natürlich auch in einer Zelle hinterlegen.
=HYPERLINK(A1&A2;A2)
In A1 steht der Pfad, in A2 der Name des Dokuments.
Die Formel dann herunterziehen und fertig.

Gruß

M.O.

Antwort 2 von HerKA

Hallo M.O.,

funktioniert perfekt! Dankeschön!!!

Noch eine Frage: hast Du vielleicht eine Lösung, damit ich Hyperlinks, die nicht funktionieren sind, automatisch löschen kann?

Gruß,
Andreas

Antwort 3 von M.O.

Hallo Andreas,

freut mich, dass es so weit geklappt hat.
Die Löschung von Hyperlinks, die nicht funktionieren, müsste man per VBA durchführen. Und da sind meine Kenntnisse zur Zeit noch sehr beschränkt :-(. Da müsste einer der VBA-Experten hier im Forum ran.

Gruß

M.O.

Antwort 4 von M.O.

Hallo Andreas,

ich habe mal etwas gegoogelt und ausprobiert und dabei ist das folgende Makro rausgekommen :-):


Sub Hyperlinkprüfung()

For i = 1 To 5000
If Cells(i, 2) = "" Then Exit Sub
hyp = Cells(i, 2).Value
If Dir(hyp) = "" Then Cells(i, 2).Clear

Next i

End Sub


Das Makro durchsucht die Spalte B1 bis B5000 und hört auf, wenn es auf eine leere Zelle trifft. Die Spalte musst du entsprechend anpassen. Sie wird in Cells durch die 2 (= B) festgelegt. Wird ein ungültiger Hyperlink gefunden, wird der Inhalt der Zelle gelöscht.

Eine Anleitung, wie du das Makro einfügst, findest du hier:
http://www.excelbeispiele.de/ unter Anleitungen und dann die Anleitung Nr. 3.

Gruß
M.O.

Antwort 5 von HerKA

Hallo M.O.,

habe das Makro eingebaut und etwas verändert:



Sub Hyperlinkprüfung()

For i = 4 To 3000
If Cells(i, 15) = "" Then Exit Sub
hyp = Cells(i, 15).Value
If Dir(hyp) = "" Then Cells(i, 15).Clear

Next i

End Sub



Wenn ich das Makro ausführen möchte erhalte ich die Fehlermeldung Laufzeitfehler ´13´: Typen unverträglich.
Beim Debuggen markiert er dann
If Dir(hyp) = "" Then

Ich bin dir bei der Lösung des Problems leider keine große Hilfe. Oder habe ich einen Fehler gemacht?

Gruß
Andreas

Antwort 6 von M.O.

Hallo Andreas,

ich habe das Makro noch mal kontrolliert und dabei einen Fehler entdeckt.
Probier es mal so:

Sub Hyperlinkprüfung()

For i = 4 To 3000
If Cells(i, 15) = "" Then Exit Sub
hyp = "C:\" & Cells(i, 15).Value
If Dir(hyp) = "" Then Cells(i, 15).Clear

Next i

End Sub

Deinen Pfad musst du ggf. entsprechend ändern.
Probier das Makro am Besten erst einmal in einer Kopie deiner Arbeitsmappe aus.

Gruß

M.O.

Antwort 7 von HerKA

Hallo M.O.,

die Verbesserung habe ich eingebaut. Jetzt werden aber bei der abarbeitung der Prozedur alle Links aus der Spalte 15 gelöscht!

Hast du vielleicht noch ein Änderungsvorschlag?

Gruß
Andreas

Antwort 8 von M.O.

Hallo Andreas,

stimmt der Pfad in hyp = "C:\" ... mit deinem Pfad überein? Den musst du ggf. anpassen.

Gruß

M.O.

Antwort 9 von HerKA

Hallo M.O.,

der Pfad ist korrekt eingetragen. Ichwerde nochmal die Thematik im Forum "am Stück" anfragen. Vielleicht hat ja noch jemand anders eine Idee.

Aber ganz herzlichen Dank für deine Unterstützung!

Gruß
Andreas

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: