Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1036to1040
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
Hyperlinks dazufügen
09.01.2009 08:06:00
Loetschy
Habe folgenden Code, um mir in einer Excel-Arbeitsmappe alle Tabellenblätter (beginnend mit A oder a) Indexartig darzustellen:

Private Sub CommandButton1_Click()
Dim i As Long, lngLetzte As Long
Dim AnzWS As Long
With Sheets("Index A")
lngLetzte = IIf(IsEmpty(.Cells(Rows.Count, 2)), .Cells(Rows.Count, 2).End(xlUp).Row, Rows.  _
_
Count)
End With
If lngLetzte >= 4 Then
Sheets("Index A").Range("B4:B" & lngLetzte).ClearContents
End If
For i = 1 To Sheets.Count
If Not Sheets(i).Name Like "Index*" Then
If Sheets(i).Name Like "A*" Or Sheets(i).Name Like "a*" Then
If Sheets("Index A").Range("B4") = "" Then
Sheets("Index A").Range("B4") = Sheets(i).Name
Else
Sheets("Index A").Cells(65536, 2).End(xlUp).Offset(1, 0) = Sheets(i).Name
End If
End If
End If
Next i
Sheets("Index A").Select
End Sub


Wie kann ich diesen Code erweitern / anpassen, dass mir die gefundenen Datensätze gleich noch mittels einem Hyperlink auf das entsprechende Tabellenblatt versehen werden ?

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hyperlinks dazufügen
09.01.2009 09:33:00
Luschi
Hallo Loetschy,
hier mal mein Lösungsvorschlag:

Private Sub CommandButton1_Click()
Dim i As Long, lngLetzte As Long, rg As Range
Dim AnzWS As Long
With Sheets("Index A")
lngLetzte = IIf(IsEmpty(.Cells(Rows.Count, 2)), _
.Cells(Rows.Count, 2).End(xlUp).Row, Rows.Count)
End With
If lngLetzte >= 4 Then
Sheets("Index A").Range("B4:B" & lngLetzte).ClearContents
'alle Hyperlinks in diesem Bereich löschen
Sheets("Index A").Range("B4:B" & lngLetzte).Hyperlinks.Delete
End If
For i = 1 To Sheets.Count
If Not LCase(Sheets(i).Name) Like "index*" Then
If LCase(Sheets(i).Name) Like "a*" Then
If rg Is Nothing Then
'beim 1. mal, rg zeigt noch auf keine Zelle
Set rg = Sheets("Index A").Range("B4")
Else
'1 Zeile tiefer, selbe Spalte
Set rg = rg.Offset(1, 0)
End If
rg.Value = Sheets(i).Name
ActiveSheet.Hyperlinks.Add Anchor:=rg, Address:="", SubAddress:= _
rg.Value & "!A1", TextToDisplay:=rg.Value
End If
End If
Next i
Set rg = Nothing
Sheets("Index A").Select
End Sub

Gruß von Luschi
aus klein-Paris

Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige