Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: pberzerker am März 18, 2014, 12:04:48 Nachmittag

Titel: Office 2010: Fortlaufender Hyperlink zu anderen Tabellenblättern
Beitrag von: pberzerker am März 18, 2014, 12:04:48 Nachmittag
Ersteinmal einen wunderschönen guten Morgen,

leider bin ich auf ein Problem in Excel gestoßen, das ich trotz einiger "googelei" und probieren nicht selbst lösen konnte.
Ich habe versucht, eine fortlaufende Liste mit Workshops in einer Tabelle zu kreieren, die wie folgt nummeriert sind: WS01,WS02,WS03.... WS240.
Aufgrund der Anzahl allein, würde ich mich schwertun dies auf die manuelle Art zu erledigen.
Zu jedem dieser Workshops ist ein eigenes Tabellenblatt mit demselben Namen vorhanden. Nun möchte ich über die Gesamtübersicht per Hyperlink auf die einzelnen Tabellenblätter zugreifen.
Wenn man über die herkömmliche Art versucht die Felder durchzunummerieren, macht Excel zwar aus WS01 ein WS02 usw, allerdings bleibt der Hyperlink statisch auf dem Tabellenblatt WS01.
Gibt es dafür nun eine Möglichkeit, auch den Hyperlink so durchzunummerieren?


Mit freundlichen Grüßen
Titel: Antw:Office 2010: Fortlaufender Hyperlink zu anderen Tabellenblättern
Beitrag von: Officer am März 18, 2014, 12:59:12 Nachmittag
Hallo,

das lässt sich nur per VBA lösen.

Ich habe mal schnell ein Makro gebaut, mit dem Hyperlinks zu den entsprechenden Blättern fortlaufend eingefügt werdenen können. Vorausetzung ist, dass der Blattname in der Zelle mit dem tatsächlichen Blattnamen übereinstimmt.

So sieht der VBA-Code aus:

Code: Visual Basic
  1. Sub hyperlink_einfuegen()
  2.  
  3. '** Dimensionierung der Variablen
  4. Dim strBlatt As String
  5.  
  6. With ActiveSheet
  7.  
  8.   For a = 3 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
  9.  
  10.     '** Blattname auslesen
  11.    strBlatt = ActiveSheet.Cells(a, 1).Value
  12.  
  13.     ActiveSheet.Hyperlinks.Add Anchor:=.Cells(a, 1), Address:="", _
  14.       SubAddress:=strBlatt & "!A1", TextToDisplay:=strBlatt
  15.   Next a
  16.  
  17. End With
  18. End Sub
  19.  

Die Beispieldatei habe ich auch als Anlage beigefügt.

Gruß Alois
[Officer]