Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1276to1280
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hyperlinks testen

Hyperlinks testen
Pascal
Guten Tag liebe VBA – Profis
 
Ich bin guter Hoffnung, dass mir hier jemand von Euch weiterhelfen kann.
 
In einer grossen Arbeitsmappe hab ich unzählige Tabellenblätter / Register auf welchen in unterschiedlichsten Zellen / Spalten Hyperlinks oder sonstiger
Text abgelegt ist.
 
Ich habe u.a. folgenden Code in dieser Excel-Arbeitsmappe hinterlegt um auf allen Tabellenblätter / Register in allen Zellen / Spalten nach den Hyperlinks zu suchen und
diese Hyperlinks auf ihre funktionstüchtigkeit hin zu überprüfen:
 
Private Sub CommandButton1_Click()
' Hyperlinks werden alle geprüft und Prüfresultat in neuer Tabelle ausgegeben
'Folgende Rubriken können dann ausgeblendet werden:
'THM2011
'CBU
'F_SAPline D5
'D_SAPline D5
'D_Passwordverwaltung
'F_Passwordverwaltung
    Dim SH As Object
    Dim shLinkList As Worksheet
    Dim L As Long
    Dim HL As Hyperlink
    Set shLinkList = Worksheets.Add(, Sheets(Sheets.Count))
    For Each SH In ThisWorkbook.Sheets
        If Not SH Is shLinkList Then
            For Each HL In SH.Hyperlinks
                L = L + 1
                shLinkList.Cells(L, 1) = SH.Name
                If TypeOf HL.Parent Is Range Then
                    shLinkList.Cells(L, 2) = HL.Parent.Address
                    Else:
                    shLinkList.Cells(L, 2) = HL.Parent.Name
                End If
                shLinkList.Cells(L, 3) = HL.Address
                shLinkList.Cells(L, 4) = (CheckLink(HL.Address) = 200)
            Next
        End If
    Next
End Sub

 
Das Resultat dieses Codes ist dann ein neues Tabellenblatt in meiner Arbeitsmappe drin auf welchem alle Registerblätter aufgelistet werden.
Hinter jedem gefundenen Hyperlink steht dann WAHR oder FALSCH (Hyperlink führt zu einem Ziel oder eben nicht)
 
Dieser Code funktioniert einwandfrei.
 
Nun aber meine Frage:
 
Ich möchte den Code so erweitern, dass mir nach dem Start dieses Codes eine Art Auswahlliste erscheint, in welcher ich die nicht zu prüfenden Tabellenblätter ankreuzen kann.
 
Zum Beispiel:
 
In der Arbeitsmappe drin hat es diverse Register / Tabellenblätter auf welchen Hyperlinks vorhanden sind, die der obige Code NICHT prüfen soll.
(Es ist auch nie die gleiche Anzahl Tabellenblätter in der Arbeitsmappe drin, da diese Arbeitsmappe ständig um weitere Tabellenblätter ergänzt wird oder welche entfernt werden)
 
Ich stell mir eine Art Userform vor, auf welche alle Tabellenblätter der Arbeitsmappe aufgelistet werden.
Vor jedem aufgelisteten Tabellenblatt-Namen soll dann ein Flag oder dergleichen stehen, welches man setzen kann.
Ist bei einem Tabellenblatt-Name also so ein Flag gesetzt, so soll dann der obige Code das Tabellenblatt überspringen und NICHT überprüfen.
 
Ich hoffe meine Frage war so einigermassen verständlich ?
 
Wäre toll, wenn mir jemand da weiterhelfen könnte diese Funktion zu verwirklichen.
 
Im voraus HERZLICHEN DANK !
 

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Hyperlinks testen
27.08.2012 10:13:11
Pascal
Hallo ! Schönen guten Tag !
Vielen herzlichen Dank für Deine Supertolle Hilfe !
Ich habe mir (kam leider erst heute dazu) Deinen Lösungsvorschlag mal genau angesehen.
Dieser entspricht genau dem was ich suchte und Dein Vorschlag funktioniert zudem einwandfrei.
Nun hab ich mir den Code mal in meine grosse Arbeitsmappe (über 50 Tabellenblätter / Register) integriet und mal
getestet.
Resultat ist korrekt.
Einzige kleine Unschönheit die ich noch habe:
Während das Makro läuft erscheint hin und wieder die Meldung: "Die Seite greift auf Informationen aus anderen Daten zu. Dies
kann ein Sicherheitsproblem darstellen. Möchten Sie den Vorgang fortsetzen ?"
Wenn ich dann auf JA drücke, so läuft das Makro weiter, wird aber nach kurzer Zeit wieder mit gleicher Meldung unterbrochen.
Natürlich werden bei meiner Arbeitsmappe auch Links zu externen Quellen / Verzeichnissen / Internet etc... aufgeführt und demzufolge auch
geprüft.
Kann ich diese Meldung Code-Seitig irgendwie unterdrücken ? Oder gibt es sonst eine Möglichkeit (evt. Sicherheitszentrale Excel) diese abzustellen und zu unterdrücken ?
Herzlichen Dank für die Antwort
Grüsse: Pascal
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige