Die normale Excel-Suchfunktion in eine Zelle verknüpfen
Hallo Ihr Lieben,
ich möchte gerne in einer sehr großen Excel-Datei die normale Suchfunktion (Start / Suchen und Auswählen / Suchen...) in die Zelle H2 verlegen, damit man dort auf einen Link oder alternativ einen Button klicken kann, um die Suche zu öffnen.
In einer anderen Datei hatte ich auch mal mit Eurer Hilfe eine Suchfunktion implementiert.
Aber da sollte nur eine einzige Spalte durchsucht werden. Das funktioniert auch sehr gut.
Alternativ könnte man natürlich auch diesen Code für die neue (sehr große) Excel-Datei nutzen und ensprechend so anpassen, dass man alle 6 vorhandenen Spalten durchsuchen kann.
Hier der Code aus der anderen Excel-Tabelle:
Hier wird z.B. ab der Zelle "A5" nach unten gesucht... aber auch nur in der Spalte "A"
Welche der beiden Varianten ich nutze, ist im Grunde egal.
Wenn es mit dem hier einkopierten Code klappt (erweitert auf A5, B5, C5, D5, E5 und F5), dann wäre das auch OK.
Grüße von
Yan
ich möchte gerne in einer sehr großen Excel-Datei die normale Suchfunktion (Start / Suchen und Auswählen / Suchen...) in die Zelle H2 verlegen, damit man dort auf einen Link oder alternativ einen Button klicken kann, um die Suche zu öffnen.
In einer anderen Datei hatte ich auch mal mit Eurer Hilfe eine Suchfunktion implementiert.
Aber da sollte nur eine einzige Spalte durchsucht werden. Das funktioniert auch sehr gut.
Alternativ könnte man natürlich auch diesen Code für die neue (sehr große) Excel-Datei nutzen und ensprechend so anpassen, dass man alle 6 vorhandenen Spalten durchsuchen kann.
Hier der Code aus der anderen Excel-Tabelle:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Sub FilterList()
'Variablen
Dim rngCurrent As Range, rngHide As Range, found As Boolean
With ActiveSheet
.UsedRange.EntireRow.Hidden = False
' Wenn Suchbegriff leer blende alle Zeilen wieder ein und beende Prozedur
If .Range("H2").Value = "" Then
Exit Sub
End If
' Startbereich festlegen
Set rngCurrent = .Range("A5")
' so lange verarbeiten bis Bereich am Ende angelangt ist
While rngCurrent.Address <> .Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Address
' Wenn der Suchbegriff gefunden wurde (od. ein Teil des Suchbegriffes)
If rngCurrent.Value Like ("*" & .Range("H2").Value & "*") Then
found = True
' prüfe ob für den Bereich Untereinträge existieren
If rngCurrent.Offset(1, 0).Value <> "" Then
' verschiebe Zeile über den aktuellen Bereich hinaus damit er nicht ausgeblendet wird
Set rngCurrent = rngCurrent.End(xlDown).Offset(1, 0)
Else
' keine Untereinträge
Set rngCurrent = rngCurrent.Offset(1, 0)
End If
Else
' Suchbegriff in der Zeile nicht enthalten, kombiniere den Bereich in einer Variablen
' um sie später auszublenden
If Not rngHide Is Nothing Then
Set rngHide = Union(rngHide, rngCurrent.EntireRow)
Else
Set rngHide = rngCurrent.EntireRow
End If
Set rngCurrent = rngCurrent.Offset(1, 0)
End If
Wend
' Wenn der Suchbegriff gefunden wurde
If found Then
' blende die nicht zutreffenden Zellen aus
If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
Else
MsgBox "Kein Eintrag gefunden.", vbExclamation
End If
End With
End Sub
Hier wird z.B. ab der Zelle "A5" nach unten gesucht... aber auch nur in der Spalte "A"
Welche der beiden Varianten ich nutze, ist im Grunde egal.
Wenn es mit dem hier einkopierten Code klappt (erweitert auf A5, B5, C5, D5, E5 und F5), dann wäre das auch OK.
Grüße von
Yan
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 2308528473
Url: https://administrator.de/forum/die-normale-excel-suchfunktion-in-eine-zelle-verknuepfen-2308528473.html
Ausgedruckt am: 12.04.2025 um 15:04 Uhr
5 Kommentare
Neuester Kommentar

Selbst ist der Mann der Doku lesen kann
Range.Find-Methode (Excel)
Beispiele findest du am Ende, also ran an die Buletten und nicht gleich so faul ans Werk!
Range.Find-Methode (Excel)
Beispiele findest du am Ende, also ran an die Buletten und nicht gleich so faul ans Werk!

Diese ständigen "Foren-Erzieher" nerven hier mittlerweile bis zum Abwinken!!
Die Outsourcer, Copy n Paster und Freitagsfragensteller nicht weniger ...