Supportnet Computer
Planet of Tech

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

Hyperlink auslesen





Frage

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 1 von Coolpix

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

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

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


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: