Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
28.04.2024 14:18:05
Anzeige
Archiv - Navigation
1916to1920
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Suchen in Datenbank

Suchen in Datenbank
11.02.2023 10:10:23
siegfried
Guten Morgen Fachfrauen und Männer,
ich habe eine Datenbank mit 12 Spalten und bis zu 2.500 Datensätze.
Ich suche eine Möglichkeit für das SUCHEN nach Text in der Datenbank, es sollte in Spalte B bis D gesucht werden.
Ich habe mal "FINDEN" angeschaut aber leider nicht das Richtige für mich !?
Es kann ein Suchfeld auch in der Tabelle Zelle E1 sein oder auch eine Userform mit einem Textfeld.
Das WICHTIGSTE, es sollte das gesuchte Wort (Text), später auch mal Zahl, die Zeile dann in der MITTE der
Tabelle stehen.
Würde mich um Unterstützung/Hilfe freuen,
gruß siegfried

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchen in Datenbank
11.02.2023 10:43:52
Antonio
Hallo,
habe selber den Code bekommen (weiß nicht mehr von wem)
bei mir funzt super, habe eine Tabelle mit über 4000 Einträge, probiers aus ob für dich was sein konnte
Eingabe über eine ImputBox (klein Größ = wurscht)
Option Explicit
Sub SuchenUndKopieren()
  Dim rng As Range, rngSearch As Range, rngFound As Range
  Dim strFirst As String, strSearch As String
  Dim lngRows() As Long, lngIndex As Long
  Dim i As Integer
  strSearch = InputBox("Bitte Suchbegriff eingeben:", "Suchen")
  ReDim lngRows(0)
  If strSearch > "" Then
    With Sheets("Songliste")         'anpassen
      If Selection.rows.Count = .rows.Count Then
        Set rng = Selection
      Else
        Set rng = .UsedRange
      End If
    End With
    
    Set rngSearch = rng.Find(what:=strSearch, LookIn:=xlValues, lookat:=xlPart, MatchCase:=False)
    
    If Not rngSearch Is Nothing Then
      strFirst = rngSearch.Address
      Do
        If IsError(Application.Match(rngSearch.row, lngRows, 0)) Then
          ReDim Preserve lngRows(lngIndex)
          lngRows(lngIndex) = rngSearch.row
          lngIndex = lngIndex + 1
          
          If rngFound Is Nothing Then
            Set rngFound = rngSearch.EntireRow
          Else
            Set rngFound = Union(rngFound, rngSearch.EntireRow)
          End If
        End If
        
        Set rngSearch = rng.FindNext(rngSearch)
        
      Loop While Not rngSearch Is Nothing And strFirst > rngSearch.Address
    End If
    
      If Not rngFound Is Nothing Then
      Sheets("Tabelle11").Range("A2:D14").ClearContents 'anpassen
      rngFound.Copy Sheets("Tabelle1").Cells(2, 1)      'anpassen
       
    End If
  End If
  Set rng = Nothing
  Set rngSearch = Nothing
  Set rngFound = Nothing
'  Set objWB = Nothing
End Sub

Anzeige
AW: Suchen in Datenbank
11.02.2023 10:57:42
siegfried
Guten Morgen Antonio,
wo stelle ich die Spalten ein ?
Nach Eingabe Suchbegriff, kam nichts.
Sheet habe ich umbenannt.
gruß siegfried
AW: Suchen in Datenbank
11.02.2023 11:08:02
Antonio
Hier Korrektur:
If Not rngFound Is Nothing Then
      Sheets("Tabelle11").Range("A2:D14").ClearContents 'anpassen
      rngFound.Copy Sheets("Tabelle1").Cells(2, 1)      'anpassen
If Not rngFound Is Nothing Then
      Sheets("Tabelle1").Range("A2:D14").ClearContents 'anpassen
      rngFound.Copy Sheets("Tabelle1").Cells(2, 1)      'anpassen
Ich habe nicht verstanden was du mit "MITTE" meinst,
Ich habe bei mir die obere Zeilen ("A2:D14") eingefroren
und in die gleiche Tabelle die Suche eingefügt.
Hier nochmal die Tabelle anpassen
Anzeige
AW: Suchen in Datenbank
11.02.2023 11:13:10
Antonio
Hallo siegfried
schau dir das Bild an
Userbild
AW: Suchen in Datenbank
11.02.2023 14:52:54
siegfried
Hallo,
bin wieder da, ich möchte keine gefundenen Daten kopieren etc., die Daten sollen angezeigt werden und in
der mitte des Bildschirms angezeigt werden, wenn möglich.
gruß siegfried
AW: Suchen in Datenbank
11.02.2023 15:33:25
Antonio
Hallo,
wie gesagt mein Bsp: funzt wie im Bild angezeit,
und ich weiß nicht was du mit Bildschirmmitte meinst,
ob die Zeilen, eine MsgBox, eine UF usw.
Daher lass ich den Thread für andere Kandidaten offen.
Sorry
LG Antonio
Anzeige
Habe dieses Makro genommen
11.02.2023 17:23:24
siegfried
Hallo zusammen,
habe jetzt dies genommen:
Sub Alternativsuche()
Dim Suchbegriff As String
Dim Weiter
Suchbegriff = InputBox("Namen einsetzen oder Kürzel und den Stern= *", "Alternative Suche")
On Error GoTo fehler
Cells.Find(What:=Suchbegriff, LookIn:=xlValues, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
nochmal:
Weiter = MsgBox("Weitersuchen?", vbYesNo, "Alternative Suche")
If Weiter = vbYes Then
Cells.FindNext(After:=ActiveCell).Activate
GoTo nochmal
End If
Exit Sub
fehler:
Weiter = MsgBox("Suchbegriff nicht gefunden!", vbInformation, "Ergebnis:")
End Sub
es wird weiter gesucht...
Schöner wäre es wenn NUR in der Spalte C bis F gesucht würde !
gruß siegfried
Anzeige
AW: Habe dieses Makro genommen
11.02.2023 17:56:14
Antonio
Hallo siegfried,
beim Link den ich gepostet habe kannst Tabelle und Range einstellen
schrollt in sichtbares Bereich das Gesuchte
probiers mal
wenn passt kannst aus deinem Code
den Teil "Weiter Suchen" übernehmen
klappt nicht mit WEITER...
11.02.2023 18:18:12
siegfried
Guten Abend Antonio,
klappt nicht mit weiter:
Sub Find()
    Dim C
    Dim Article As String
    Dim Weiter
    
    Article = InputBox("Please enter your PO number or our OC number")
    If Article = "" Then Exit Sub
    With ActiveSheet.Range("$C$3:$F$650000")
        Set C = .Find(Article, LookIn:=xlValues)
        If Not C Is Nothing Then
            C.Select
        Else
            MsgBox "Not found"
nochmal:
Weiter = MsgBox("Weitersuchen?", vbYesNo, "Alternative Suche")
If Weiter = vbYes Then
Cells.FindNext(After:=ActiveCell).Activate
GoTo nochmal
End If
Exit Sub
fehler:
Weiter = MsgBox("Suchbegriff nicht gefunden!", vbInformation, "Ergebnis:")
        End If
    End With
End Sub
gruß siegfried
Anzeige
AW: klappt nicht mit WEITER...
11.02.2023 18:46:11
Antonio
Versu hiermit
bei mir Funzt
Sub Find()
Dim Weiter
Dim Search As Range
Dim Article As String
Article = InputBox("Please enter your PO number or our OC number")
If Article = "" Then Exit Sub
Worksheets("Songliste").Range("D15:H200").Select 'Anpassen
For Each Search In Selection
    If Search = Article Then
    Search.Select
    ActiveWindow.ScrollRow = Selection.row
    'ActiveWindow.ScrollColumn = Selection.Column
    End If
nochmal:
Weiter = MsgBox("Weitersuchen?", vbYesNo, "Alternative Suche")
   If Weiter = vbYes Then
   Cells.FindNext(After:=ActiveCell).Activate
   GoTo nochmal
   End If
   Exit Sub
 Next
fehler:
   Weiter = MsgBox("Suchbegriff nicht gefunden!", vbInformation, "Ergebnis:")
End Sub

Anzeige
erledigt ! DANKE -)
11.02.2023 18:26:49
siegfried
Hallo Antonio,
habe es geschafft:
Sub Find()
    Dim C
    Dim Article As String
    Dim Weiter
    
    Article = InputBox("Namen einsetzen oder Kürzel und den Stern= *", "Eingabe-Box")
    If Article = "" Then Exit Sub
    With ActiveSheet.Range("$C$3:$F$650000")
        Set C = .Find(Article, LookIn:=xlValues)
        If Not C Is Nothing Then
            C.Select
        Else
            MsgBox "Not found"
     End If
   End With
            
nochmal:
Weiter = MsgBox("Weitersuchen?", vbYesNo, "Alternative Suche")
If Weiter = vbYes Then
Cells.FindNext(After:=ActiveCell).Activate
GoTo nochmal
End If
Exit Sub
fehler:
Weiter = MsgBox("Suchbegriff nicht gefunden!", vbInformation, "Ergebnis:")
End Sub
Schönen Abend noch !
gruß siegfried
Anzeige
AW: Bitte gerne : -) owT
11.02.2023 18:48:18
Antonio
Es Freut mich
AW: Suchen in Datenbank
11.02.2023 15:35:00
Oberschlumpf
Hi siegfried,
und per Upload eine Bsp-Datei mit Bsp-Daten zu zeigen findest du nicht hilfreich für die Helfenden?
Ciao
Thorsten
AW: Suchen in Datenbank
11.02.2023 19:27:57
Marc
Hast du eine Datenbank oder hast du eine Tabelle mit diversen Spalten und Zeilen ?
Denn eine Excel Tabelle ist ja > Datenbank

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige