Link als Auswahlfeld?

Tach zusammen,

ein mittels „Hyperlink einfügen“ gesetzter Link in
Tabelle 1, Zelle A2 verweist auf „Tabelle 2, Zelle B10“.

Gibt es eine Möglichkeit, diesen „Link“ als Auswahlfeld
darzustellen, um z.B nach „Tabelle 2, Zelle B10“ ODER
„Tabelle 3, Zelle B15“ ODER… zu springen?

Gruß und danke schonmal

Rolf

Hallo Rolf,

ein mittels „Hyperlink einfügen“ gesetzter Link in
Tabelle 1, Zelle A2 verweist auf „Tabelle 2, Zelle B10“.
Gibt es eine Möglichkeit, diesen „Link“ als Auswahlfeld
darzustellen, um z.B nach „Tabelle 2, Zelle B10“ ODER
„Tabelle 3, Zelle B15“ ODER… zu springen?

soso, du hast also das Archiv und das Forum nach vorhandenen Beiträgen zu Hyperlink und Gültigkeit durchforstet?

Ich glaube nicht, denn mit Suchbegriff:
Hyperlink und/oder Gültigkeit hättest du dies gefunden:

/t/excel-hyperlinks/4554131

Nagut, nagut, ist ja okay *gg* eine reine Excelanfrage im WinXP-Brett
zu stellen ist eine raffiniert versteckte Angelegenheit. Der Anfrager kann m.E. froh sein daß ich WinXP Probleme :frowning: hatte und über seine Anfrage stolperte *gg*

Meine dortige Vba-Lösung müßte das machen was du möchtest, also in A1 in einer Gültigkeitsliste aus den Hyperlinks in Spalte B einen auswählen.

Gruß
Reinhard

Hallo Rolf,

ein mittels „Hyperlink einfügen“ gesetzter Link in
Tabelle 1, Zelle A2 verweist auf „Tabelle 2, Zelle B10“.
Gibt es eine Möglichkeit, diesen „Link“ als Auswahlfeld
darzustellen, um z.B nach „Tabelle 2, Zelle B10“ ODER
„Tabelle 3, Zelle B15“ ODER… zu springen?

Moin Reinhard,

soso, du hast also das Archiv und das Forum nach vorhandenen
Beiträgen zu Hyperlink und Gültigkeit durchforstet?

Doch, habe ich, aber nach einer 3/4 Stunde hatte ich die Faxen dick.

Ich glaube nicht, denn mit Suchbegriff:
Hyperlink und/oder Gültigkeit hättest du dies gefunden:

/t/excel-hyperlinks/4554131

Nagut, nagut, ist ja okay *gg* eine reine Excelanfrage im
WinXP-Brett
zu stellen ist eine raffiniert versteckte Angelegenheit.

Nee, is klar, hätte ich gleich drauf kommen können :wink:

Meine dortige Vba-Lösung müßte das machen was du möchtest,
also in A1 in einer Gültigkeitsliste aus den Hyperlinks in
Spalte B einen auswählen.

Habs inzwischen gefunden, wird wohl dieser Code gewesen sein:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zei As Long
On Error GoTo Fehler
If Target.Address „$A$1“ Then Exit Sub
Application.EnableEvents = False
Zei = Application.WorksheetFunction.Match(Range(„A1“), Range(„B:B“), 0)
With Cells(Zei, 2).Hyperlinks(1)
ActiveSheet.Hyperlinks.Add Anchor:=Range(„A1“), Address:=.Address, TextToDisplay:=.TextToDisplay
End With
Application.EnableEvents = True
Exit Sub
Fehler:
MsgBox „Fehler“
Resume Next
End Sub

Ich bleibe mal bei diesem Code und habe in Tabelle1 B1 bis B6 die
Tabellenblätter eingetragen, auf die er springen soll: Tabelle2, Tabelle3, Tabelle4.
In A1 verweise ich per Gültigkeit auf die Einträge in B1 bis B6

Tabelle1 unten Rechte Maustaste --> Code anzeigen und den obigen Code hineinkopiert,
Editor geschlossen.

Wenn ich nun aus dem Auswahlfeld in A1 einen Eintrag auswähle und in anschließend
anklicken will erhalte ich die Fehlermeldung „Verweis ungültig“.

Ich vermute, es reicht nicht, nur den Tabellennamen in die „Sprungliste“ zu schreiben.
Kannst Du nochmal helfen?

Remoin Rolf,

probiers mal so:

Option Explicit
'
Private Sub Worksheet\_Change(ByVal Target As Range)
Dim Zei As Long
On Error GoTo Fehler
If Target.Address "$A$1" Then Exit Sub
Application.EnableEvents = False
Zei = Application.WorksheetFunction.Match(Range("A1"), Range("B:B"), 0)
With Cells(Zei, 2).Hyperlinks(1)
 ActiveSheet.Hyperlinks.Add Anchor:=Range("A1"), Address:="", \_
 TextToDisplay:=.TextToDisplay, SubAddress:=.SubAddress
End With
Application.EnableEvents = True
Exit Sub
Fehler:
 MsgBox "Fehler"
 Resume Next
End Sub

Gruß
Reinhard

Hallo Reinhard,

probiers mal so:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zei As Long
On Error GoTo Fehler
If Target.Address „$A$1“ Then Exit Sub
Application.EnableEvents = False
Zei = Application.WorksheetFunction.Match(Range(„A1“),
Range(„B:B“), 0)
With Cells(Zei, 2).Hyperlinks(1)
ActiveSheet.Hyperlinks.Add Anchor:=Range(„A1“),
Address:="", _
TextToDisplay:=.TextToDisplay, SubAddress:=.SubAddress
End With
Application.EnableEvents = True
Exit Sub
Fehler:
MsgBox „Fehler“
Resume Next
End Sub

Leider nicht,

 A B
1 Auswahlfeld Tabelle1
2 Tabelle2
3 Tabelle3
4 Tabelle4
5 Tabelle5
6 Tabelle6

Beim Auswählen aus dem Auswahlfeld in A1
kommt ne MessageBox: Fehler
Bei 2x Klick auf OK veschwindet diese wieder.
Sonst passiert nichts.

Gruß

Rolf

Hallo Rolf,

in deiner Anfrage wolltest du Zellen in anderen Blättern auswählen, nun aufeinmal Blätter auswählen, was gilt denn nun?

Und erzähl mal was du eigentlich vorhast, Gültigkeitsauswahl hat ja den Nachteil daß du erst mal mit der Tastatur in A1 gelangen mußt um dann mittels Maus etwas auszuwählen.

Und Wechsel zwischen Tastatur und Muas bremst den Arbeitsvorgang stark ab.
Von daher ist es besser alles mit tastenkürzeln oder mit der maus zu machen ohne Wechsel, also sprich, was genau haste vor?

Gruß
Reinhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Rolf,

in deiner Anfrage wolltest du Zellen in anderen Blättern
auswählen, nun aufeinmal Blätter auswählen, was gilt denn nun?

Und erzähl mal was du eigentlich vorhast,

Ich habe 20 Arbeitsblätter in meiner Mappe.
Auf Blatt 20 habe ich Hinweise zur Handhabung der
übrigen 19 Blätter hinterlegt.

Unter jedes Hilfethema habe ich einen Link auf die
entsprechende Stelle im zugehörigen Blatt gesetzt.

EIN Hilfethema bezieht sich aber auf 5 ähnliche Blätter.
Mit dem gesuchten Auswahllink möchte ich den Anwender nun
wählen lassen, auf welches der 5 Blätter er springen möchte.

Gültigkeitsauswahl
hat ja den Nachteil daß du erst mal mit der Tastatur in A1
gelangen mußt um dann mittels Maus etwas auszuwählen.
Und Wechsel zwischen Tastatur und Muas bremst den
Arbeitsvorgang stark ab.

Ich denke, in diesem Fall passt das schon so, weil der
Anwender bereits über einen Link auf dieses Blatt 20 gelangt ist
und sowieso die Maus in der Hand hat.

Von daher ist es besser alles mit tastenkürzeln oder mit der
maus zu machen ohne Wechsel, also sprich, was genau haste vor?

Gruß
Reinhard

Hast Du noch ne andere Idee?

Gruß
Rolf

Hallo Reinhard,

probiers mal so:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zei As Long
On Error GoTo Fehler
If Target.Address „$A$1“ Then Exit Sub
Application.EnableEvents = False
Zei = Application.WorksheetFunction.Match(Range(„A1“),
Range(„B:B“), 0)
With Cells(Zei, 2).Hyperlinks(1)
ActiveSheet.Hyperlinks.Add Anchor:=Range(„A1“),
Address:="", _
TextToDisplay:=.TextToDisplay, SubAddress:=.SubAddress
End With
Application.EnableEvents = True
Exit Sub
Fehler:
MsgBox „Fehler“
Resume Next
End Sub

Leider nicht,

A B
1 Auswahlfeld Tabelle1
2 Tabelle2
3 Tabelle3
4 Tabelle4
5 Tabelle5
6 Tabelle6

Beim Auswählen aus dem Auswahlfeld in A1
kommt ne MessageBox: Fehler
Bei 2x Klick auf OK veschwindet diese wieder.
Sonst passiert nichts.

Gruß

Rolf

Grüezi Rolf

Ich bin eben über diese Beitragsfolge ‚gestolpert‘.

ein mittels „Hyperlink einfügen“ gesetzter Link in
Tabelle 1, Zelle A2 verweist auf „Tabelle 2, Zelle B10“.

Gibt es eine Möglichkeit, diesen „Link“ als Auswahlfeld
darzustellen, um z.B nach „Tabelle 2, Zelle B10“ ODER
„Tabelle 3, Zelle B15“ ODER… zu springen?

Du könntest in der Gültigkeit die exakten Inhalte des Hyperlink-Ziels hinterlegen (oder in einer Liste im Tabellenblatt zur Verfügung stellen) und dann in einer anderen Zelle mit der Funktion HYPERLINK() dich auf die Gültigkeitszelle beziehen.

Das Vorgehen wäre dann:

  • Auswahl aus dem Gültigkeits-DropDown
  • Klick auf den daneben stehenden (automatisch erzeugten) Hyperlink

Bei alledem ist dann kein VBA mit im Spiel (nicht dass ich dir das ausreden wollte, aber vielleicht kann das Sinn machen).


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Thomas,

danke für Dein Interesse

ein mittels „Hyperlink einfügen“ gesetzter Link in
Tabelle 1, Zelle A2 verweist auf „Tabelle 2, Zelle B10“.

Gibt es eine Möglichkeit, diesen „Link“ als Auswahlfeld
darzustellen, um z.B nach „Tabelle 2, Zelle B10“ ODER
„Tabelle 3, Zelle B15“ ODER… zu springen?

Du könntest in der Gültigkeit die exakten Inhalte des
Hyperlink-Ziels hinterlegen (oder in einer Liste im
Tabellenblatt zur Verfügung stellen) und dann in einer anderen
Zelle mit der Funktion HYPERLINK() dich auf die
Gültigkeitszelle beziehen.

Das Vorgehen wäre dann:

  • Auswahl aus dem Gültigkeits-DropDown

ok

  • Klick auf den daneben stehenden (automatisch erzeugten)
    Hyperlink

Das habe ich nicht verstanden, wie erzeuge ich diesen automatischen
Hyperlink?

Ich gehe auf die Zelle neben dem Auswahlfeld --> Hyperlink einfügen -
und dann? - …finde ich den Weg zu meinem Auswahlfeld nicht…


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Gruß

Rolf

Grüezi Rolf

danke für Dein Interesse

Aber gerne - deines setze ich mal voraus…

…denn ich schrieb:

Du könntest in der Gültigkeit die exakten Inhalte des
Hyperlink-Ziels hinterlegen (oder in einer Liste im
Tabellenblatt zur Verfügung stellen) und dann in einer anderen
Zelle mit der Funktion HYPERLINK() dich auf die
Gültigkeitszelle beziehen.

Das Vorgehen wäre dann:

  • Auswahl aus dem Gültigkeits-DropDown

ok

  • Klick auf den daneben stehenden (automatisch erzeugten)
    Hyperlink

Das habe ich nicht verstanden, wie erzeuge ich diesen
automatischen Hyperlink?

Ich gehe auf die Zelle neben dem Auswahlfeld --> Hyperlink
einfügen

…und Du nimmst nicht die Funktion HYPERLLINK() sondern fügst diesen wie bisher ein.

Nimm daher die Funktion(!!) und baue dir den String mit dem Pfad und der Angabe zur Zelle zusammen, sodass sich die Formel die relevanten Teile aus der Zelle mit dem GültigkeitsdorpDown bezieht.

Auf diese Weise ist der Hyperlink dann automatisch.

Bei Bedarf kann ich auch eine Demo-Mappe erstellen.


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Thomas,

…denn ich schrieb:

Du könntest in der Gültigkeit die exakten Inhalte des
Hyperlink-Ziels hinterlegen (oder in einer Liste im
Tabellenblatt zur Verfügung stellen) und dann in einer anderen
Zelle mit der Funktion HYPERLINK() dich auf die
Gültigkeitszelle beziehen.

Hast Recht, das habe ich übersehen, dass es sich um die Funktion handelt - sorry. Den „automatisch“ generierten Link habe ich jetzt,

Das Vorgehen wäre dann:

  • Auswahl aus dem Gültigkeits-DropDown

ok

  • Klick auf den daneben stehenden (automatisch erzeugten)
    Hyperlink

Das habe ich nicht verstanden, wie erzeuge ich diesen
automatischen Hyperlink?

Ich gehe auf die Zelle neben dem Auswahlfeld --> Hyperlink
einfügen

…und Du nimmst nicht die Funktion HYPERLLINK() sondern fügst
diesen wie bisher ein.

Nimm daher die Funktion(!!) und baue dir den String mit dem
Pfad und der Angabe zur Zelle zusammen, sodass sich die Formel
die relevanten Teile aus der Zelle mit dem GültigkeitsdorpDown
bezieht.

Das hat trotz Konsultation der Excel-Hilfe nicht geklappt :frowning:
Schiebst Du mich nochmal an?

Auf diese Weise ist der Hyperlink dann automatisch.

Bei Bedarf kann ich auch eine Demo-Mappe erstellen.

Das wäre nett.

Gruß
Rolf

Grüezi Rolf

…denn ich schrieb:
Du könntest in der Gültigkeit die exakten Inhalte des
Hyperlink-Ziels hinterlegen (oder in einer Liste im
Tabellenblatt zur Verfügung stellen) und dann in einer anderen
Zelle mit der Funktion HYPERLINK() dich auf die
Gültigkeitszelle beziehen.

Hast Recht, das habe ich übersehen, dass es sich um die
Funktion handelt - sorry. Den „automatisch“ generierten Link
habe ich jetzt,

Ich kenne die Hitze des Gefechtes nur allzu gut, dennoch solltest Du dich nicht nur oberflächlich mit den Antworten auseinandersetzen.

Nimm daher die Funktion(!!) und baue dir den String mit dem
Pfad und der Angabe zur Zelle zusammen, sodass sich die Formel
die relevanten Teile aus der Zelle mit dem GültigkeitsdorpDown
bezieht.

Das hat trotz Konsultation der Excel-Hilfe nicht geklappt :frowning:
Schiebst Du mich nochmal an?

Bei Bedarf kann ich auch eine Demo-Mappe erstellen.

Das wäre nett.

Na, dann schau dir das hier mal an:

http://users.quick-line.ch/ramel/Demo-Daten/Dynamisc…

In der kleinen Steuer-Tabelle kannst Du pro Tabellenblatt den Namen und auch gleich die Ziel-Adresse angeben und dies so individuell gestalten.

Wähle aus dem DropDown eines der Tabellenblätter aus und klicke dann auf den Hyperlink.

Den Text und auch die Adressen kannst Du natürlich nach Belieben anpassen.

Mit freundlichen Grüssen
Thomas Ramel

  • MVP für Microsoft-Excel -
    [Win XP Pro SP-2 / xl2003 SP-3]

Danke
Hallo Thomas,

danke für die Demo-Datei. Jetzt funktioniert das natürlich,
aber auf diese Formel =WENN(A1="";"";HYPERLINK("#"&A1&"!"&SVERWEIS(A1;A5:B9;2;0);"Hier klicken für Sprung auf "&A1)) wäre ich sicher
nicht gekommen.

Vielen Dank nochmal.

Gruß
Rolf

Grüezi Rolf

danke für die Demo-Datei. Jetzt funktioniert das natürlich,

Fein, wenn das für dich so passt :smile:

aber auf diese Formel
=WENN(A1="";"";HYPERLINK("#"&A1&"!"&SVERWEIS(A1;A5:B9;2;0);"Hier
klicken für Sprung auf "&A1)) wäre ich sicher
nicht gekommen.

…ich ja auch nicht - die Idee mit dem SVERWEIS() ist mir auch erst bei Bearbeiten gekommen :wink: