Nach Zelleninhalt suchen

  • Excel

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von DoSchwob.

    Nach Zelleninhalt suchen

    Hallo alle,

    ich bin ziemlich neu in dem visual basic thema. Ich benütze Exel2003. Mich würde interessieren ob es möglich ist, dass vb nach einem Zelleninhalt sucht. Mein Wunsch wäre es über eine inputbox ein Wort einzugeben, das vb dann selbstständig in der Tabelle sucht und einzelne Spalten aus dieser Zeile ausgibt.

    Wenn mir jemand helfen könnte wäre das echt super.

    Vielen Dank
    Vielen Dank für die Antwort Angent Smith, nur leider kann ich mir da nichts darunter vorstellen, vielleicht kannst du mir ein Beispiel zeigen. :D
    Vielleicht haben auch no´ch andere eine Idee wie man mir das verständlich machen könnte


    Danke
    Gruß
    bender

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „bender“ ()

    Ein einfaches Beispiel:

    Wenn du die Zellen von A1 bis A100 nach dem Text "Test" durchsuchen willst, kannst du das so machen, wenn der Text in der Zelle enthalten sein soll:

    Visual Basic-Quellcode

    1. For i = 1 to 100
    2. If Cells(i, 1) Like "*Test*" Then MsgBox "Gefunden!"
    3. Next


    Und so, wenn der Text der Zelle genau dem Wort entsprechen soll:

    Visual Basic-Quellcode

    1. For i = 1 to 100
    2. If Cells(i, 1) = "Test" Then MsgBox "Gefunden!"
    3. Next



    Ich würde dir aber empfehlen, die Eintrage "For...Next-Anweisung", "If...Then...Else-Anweisung", "Range-Auflistung" und "Like (Operator)" der VB-Hilfe durchzulesen.
    siehe [Allgemein] Aktionsbutton

    Mich wundert jedoch, dass du dieses Thema ("Nach Zellinhalt suchen") ins richtige Unterforum gestellt hast, aber das Thema "Aktionsbutton" ins Hauptforum, obwohl das auch VBA betrifft.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „roddy“ ()

    Hier mal ein kleiner Code Ausschnitt: Die SChleife sucht erst alle Zeilen in Spalte A mit TExtinhalt ab, dann Spalte B etc. Wenn der Wert gefunden wurde, wird die Zelle mit Inhalt ausgewählt.

    Visual Basic-Quellcode

    1. Sub Suchen()
    2. Dim str_SuchString As String
    3. Dim Counter1 As Integer
    4. Dim Counter2 As Integer
    5. str_SuchString = InputBox("Geben Sie ein Wort nachdem Sie suchen möchten ein:", "Suche...")
    6. For Counter1 = 1 To ActiveSheet.Cells.SpecialCells(xlLastCell).Column
    7. For Counter2 = 1 To ActiveSheet.Cells.SpecialCells(xlLastCell).Row
    8. If Cells(Counter2, Counter1).Value = str_SuchString Then
    9. Cells(Counter2, Counter1).Select
    10. End If
    11. Next
    12. Next
    13. End Sub
    Schon mal in der Hilfe nachgesehen? Ist um einiges schneller als der eigene Schleifendurchlauf.

    Beispiel zur Find-Methode
    Dieses Beispiel findet alle Zellen im Bereich "A1:A500" des ersten Tabellenblatts, die den Wert 2 enthalten. Anschließend werden diese Zellen grau formatiert.

    Visual Basic-Quellcode

    1. With Worksheets(1).Range("a1:a500")
    2. Set c = .Find(2, LookIn:=xlValues)
    3. If Not c Is Nothing Then
    4. firstAddress = c.Address
    5. Do
    6. c.Interior.Pattern = xlPatternGray50
    7. Set c = .FindNext(c)
    8. Loop While Not c Is Nothing And c.Address <> firstAddress
    9. End If
    10. End With