VBA Suchen und springe zu
#1
Hallo,

ich suche nach einem VBA Code der via Button bzw. Knopf ausgelöst wird.

Der Code soll nach dem Wert (Worksheet.Dasboard B4) im Workseet.Datensatz B:B suchen und bei einer Übereinstimmung direkt in die Zeile springen bzw. eigentlich auf der Seite direkt den Filter auf den Wert in B4 setzen und auf das Worksheet Datensatz wechseln.

Formel habe ich hinbekommen -> =WENNFEHLER(HYPERLINK("#Datensatz!B"&VERGLEICH(B4;Datensatz!B:B;0);"Gehe zu");"")

Ich habe da viel über Google gesucht und ausprobiert umgeschrieben, aber ich komme leider zu keinem Ergebnis.  22

Danke für eure Hilfe

Grüße
Antworten Top
#2
Benutze bei mir um an das Laufenden Datum in einem großen Blatt zu kommen.
Probieren Sie es aus, denke das es bei Ihnen auch funktionieren wird.

=HYPERLINK("#B"&VERWEIS(9;1/(B:B=HEUTE());ZEILE(B:B));"Gehe zu heute")


Hoffe das ich damit helfen konnte.

78
Niko
Der Anfänger
Antworten Top
#3
Cool vielen Dank.

Also das mit dem Hyperlink habe ich hinbekommen. Dennoch wäre es natürlich geil ein VBA Marko zu haben was quasi den Wert aus Worksheet.Dasboard B4 nimmt und auf dem Worksheet.Datensatz den Filter in Spalte B auf den Wert aus B4 setzt (natürlich sollten davor alle Filter nochmal aufgehoben werden). und die Ansicht direkt auf diese Seite springt.

Also quasi Makro Filter-reset + Filter Setzen + Hyperlink funktion.
Antworten Top
#4
Hallo

bitte mal den kleinen Code testen ob der Autofilter einwandfrei funktioniert. Den Rangebereich bitte selbst anpassen. Zur Zeit von A-D im Code
Wenn der Filter mit Spalte B beginnt die Zahl "2" hinter AutoFilter auf 1 für Spalte 1 setzen!

mfg  Gast 123

Code:
Sub Test()
Dim DashWert As Long, lz1 As Long
  DashWert = Worksheets("Dashbord").Range("B4").Value
  Worksheets("Datensatz").Select
    ActiveSheet.AutoFilterMode = False
    lz1 = ActiveSheet.UsedRange.Rows.Count
    '** Bitte den Range Bereich selbst anpassen
    Range("A2:D" & lz1).AutoFilter 2, Criteria1:=DashWert
End Sub
Antworten Top
#5
Hallo,

ne da kommt bei mir direkt ein Fehler.

Ihr findet mal im Anhang ein Beispiel, wie es aktuell aussieht. Das mit VBA Autofilter setzen und springe zum anderen Blatt wäre schon noch eine Nette sache.

Eventuell braucht man dann noch ein zweites Makro "Alle Filter aufheben".

Danke für eure Hilfe und Grüße
Luk


Angehängte Dateien
.xlsx   Beispiel.xlsx (Größe: 36,29 KB / Downloads: 3)
Antworten Top
#6
Hallo

probier es bitte mal mit dem geänderten Code. Im Beispiel klappte es.

mfg Gast 123

Code:
Sub Test()
  Dim DashWert As Variant
  DashWert = Worksheets("Dashboard").Range("B4").Value
  Worksheets("Datensatz").Select
    ActiveSheet.AutoFilterMode = False
    ActiveSheet.ListObjects("Tabelle1").Range.AutoFilter Field:=2, Criteria1:=DashWert
End Sub
Antworten Top
#7
Sauber :) Danke

Läuft alles...Vielen vielen Dank.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste