Registriert seit: 01.04.2017
Version(en): 2010
Hallo und frohe Ostern alle miteinander,
ich versuche mich gerade an folgender Aufgabe:
In "Tabelle1" in Zelle "A1" habe ich eine Zeichenfolge stehen, die ein- oder mehrmals in "Tabelle2" ("B:B") vorkommen kann. Farbliches einfärben etc ist soweit kein Problem,
jedoch finde ich keine Möglichkeit über direkt in "Tabelle2" (und zum ersten und/oder einzigen Eintrag) zu verspringen.
Natürlich gibt es die allgemeine Suchfunktion, jedoch würde ich gerne versuchen, dies über einen Button neben dem Eintrag zu realisieren.
Ist dies überhaupt möglich?
Gruß
Bookshelf3011
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi,
setze einen Hyperlink.
Rechtsklick in der Quellzeile, danach Angabe des Ziels.
[
Bild bitte so als Datei hochladen: Klick mich!]
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 01.04.2017
Version(en): 2010
Hallo WillWissen,
das Problem ist:
die Einträge in "Tabelle2" werden erst sehr viel später eingepflegt. Zudem kann es passieren, dass die Einträge in "Tabelle2" häufig in ihrer Zeilenposition verändert werden.
Ein genauer Verweis mittels Hyperlink wäre in so einem Fall wahrscheinlich kontraproduktiv, da man ihn bei jeder Änderung anpassen müsste, oder?
Sry, das hätte ich vermutlich gleich dazu schreiben sollen.
Gruß
Bookshelf3011
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
16.04.2017, 16:37
(Dieser Beitrag wurde zuletzt bearbeitet: 16.04.2017, 16:37 von WillWissen.)
Hi,
dann muss ein anderer Hyperlink herhalten :32:
So sieht dein erstes Blatt aus...
Tabelle1 | A |
1 | Name1 |
2 | Name2 |
3 | Name3 |
4 | Name4 |
5 | Name5 |
6 | Name6 |
Formeln der Tabelle |
Zelle | Formel | A1 | =HYPERLINK("#Tabelle2!B"&VERGLEICH(Tabelle2!B1;Tabelle2!B:B;0);Tabelle2!B1) |
|
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8 ... und mit klick auf den entsprechenden Link landest du im zweiten punktgenau, auch wenn, wie im Beispiel die Zellen hin- und hergeschoben wurden.
Tabelle2 | B |
1 | Name1 |
2 | Name2 |
3 | |
4 | Name4 |
5 | |
6 | Name6 |
7 | |
8 | Name5 |
9 | |
10 | Name3 |
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8 Nachtrag:
Du darfst die Einträge natürlich nur innerhalb der Spalte verschieben - spaltenübergreifend geht es ohne separate Anpassung nicht.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 21.06.2016
Version(en): 2021
Hallo Bookshelf...,
wenn du die Aktion über einen Button aufrufen möchtest, benötigst du ein Makro.
In dem Makro kannst du die "allgemeine Suchfunktion" einbauen. Die notwendigen Befehle bekommst du, wenn du die manuelle Suche einmal aufzeichnest.
Fall du hierfür weitere Hilfen benötigst, lade doch bitte eine Beispieldatei hoch.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:1 Nutzer sagt Danke an Ego für diesen Beitrag 28
• Bookshelf3011
Registriert seit: 12.03.2016
Version(en): Excel 2003
Hallo
ich hatte einen Beitrag geschrieben, der ist wohl verloren gegangen. Hier noch mal ein Makro als Lösung für Button.
Dieser Code sucht in Tabelle2 den Wert, und springt die 1. Zelle in Tabelle2 direkt an. Kommt der Wert mehrfach vor bekommt man eine Meldung wie oft er vorkommt. Falls diese Meldung unerwünscht ist einfach die letzte MsgBox Zeile im Code löschen.
mfg 123
Code:
Sub Tabelle2_Suchzelle_anspringen()
Dim Zahl As Integer, Indx As Long
Dim TB2 As Worksheet, Txt As Variant
Set TB2 = Worksheets("Tabelle2")
'Wert aus Tabelle 1 "A1" laden + Aufzaehlen
Txt = Worksheets("Tabelle1").Range("A1").Value
Zahl = Application.WorksheetFunction.CountIf(TB2.Columns(2), Txt)
If Zahl = 0 Then MsgBox Txt & " gibt es nicht in Tabelle2": Exit Sub
Indx = Application.WorksheetFunction.Match(Txt, TB2.Columns(2), 0)
Worksheets("Tabelle2").Select
Cells(Indx, 2).Select
'** Meldung wie oft Wert vorhanden ist (löschen)
If Zahl > 1 Then MsgBox Zahl & " mal vorhanden"
End Sub
Registriert seit: 01.04.2017
Version(en): 2010
Hallo Gast 123,
vielen Dank für deinen Code...er entspricht genau dem, was ich mir vorgestellt habe. Auch an alle anderen vielen Dank für eure Mühe.
Gruß und schönen Abend
Bookshelf3011