online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon morpheus__85 vom 26.07.2019, 08:51 Options

Hyperlink auslesen

Hallo alle miteinander.

Ich möchte in einer Exceltabelle die vorhandenen Hyperlinks auslesen.
Meine Tabelle sieht folgendermaßen aus.

.......A
1....Text mit Hyperlink
2....Text mit Hyperlink
3.....Text ohne Hyperlink
4.....Text mit Hyperlink

In der Spalte A sind Wörter oder Texte hinterlegt. Entweder mit oder ohne Hyperlink. Ich möchte jetzt in der Spalte B, dass wenn ein Hyperlink vorhanden ist, mir der Hyperlink ausgelesen wird. z.B. B1= www.google.de.
wenn kein Hyperlink hinterlegt is, soll die Zelle einfach leer gelassen werden.

........B
1.....www.google.de
2.....www.google.de
3....
4....www.google.de

Hab das mal mit folgendem code versucht.

For i = 1 To 65536
If Cells(i, 1).Value = "" Then
Exit Sub

Else

Worksheets(1).Cells(i, 2).Value = Worksheets(1).
Cells(i, 1).Hyperlinks(1).Address

End If

Next i

Das funktioniert soweit ganz gut, allerdings nur solange, bist eben in einem Feld kein Hyperlink hinterlegt ist, dann kommt eine Fehlermeldung.
Mein Problem... wie müsste ich schreiben, dass er eben, fals KEIN Hyperlink vorliegt, die Zelle in Spalte B leer lässt und das nächste Feld durchsucht.
Leere Zeilen können zwischendrin nicht enthalten sein.

Hoffe ihr könnt mir helfen.

gruß
morpheus


Antwort schreiben

Antwort 1 von Coolpix vom 27.07.2019, 16:56 Options

hallo morpheus,
warum stellst du deine Frage nicht im Excel-Forum ?

Zu deiner Frage:
Du musst erstens überprüfen, ob in der Zelle überhaupt etwas drin steht und zweitens ob die Zelle einen Hyperlink hat.

mit dem u.a. Code in einem Modul sollte es funktionieren


Option Explicit

Sub hyperlinks_auslesen()
    Dim lngI As Long    'Zähler für Schleife
    Dim lngMax  'Variable für letzte gefüllte Zelle

'letzte gefüllte Zelle in Spalte 1 (=A) ermitteln
    lngMax = ActiveSheet.Cells(xlLastCell, 1).End(xlUp).Row

    For lngI = 1 To lngMax
        'steht überhaupt etwas in der Zelle ?
        If Cells(lngI, 1) > 0 Then
            'hat die Zelle einen Hyperlink ?
            If Cells(lngI, 1).Hyperlinks.Count > 0 Then
                'schreibe Hyperlink in Spalte 2
                Cells(lngI, 2) = Cells(lngI, 1).Hyperlinks(1).Address
            End If
        End If
    Next lngI

End Sub


Feedback fänd ich klasse !!

Greetings ;-)

Antwort 2 von morpheus__85 vom 30.07.2019, 07:52 Options

hallo coolpix,

so, nicht das du denkst ich hätte dich vergessen aber hab erst soeben deine antwort gelesen war nämlich freitag um die uhrzeit schon im wochenende ;-)

vielen danke für deine hilfe hat wunderbar geklappt.
genau so sollte es funktionieren.

gruß
morpheus

Ähnliche Themen

Hyperlilnk
maggy  19.06.2007 - 251 Hits -

hyperlink per makro auslesen
morpheus__85  09.08.2007 - 69 Hits - 2 Antworten

Hyperlink automatisch starten
kowalski1958  03.04.2008 - 190 Hits - 1 Antwort

Hyperlinks in Word "variabel" gestalten
nuocmam31  03.03.2008 - 138 Hits - 1 Antwort

Hyperlink über Bezug in einem anderen Datenblatt auslesen
SchalUndRauch  11.06.2008 - 105 Hits - 3 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026