Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Eintrag in Spalte per VBA suchen

Forumthread: Eintrag in Spalte per VBA suchen

Eintrag in Spalte per VBA suchen
13.11.2003 10:00:46
Albatros
Ich möchte rausfinden, ob ein gewisser Eintrag in einer Spalte vorhanden ist.
Als Ergebnis möchte ich ein true oder false erhalten.

Das ganze soll in VBA gemacht werden.

Gruß
Oliver
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eintrag in Spalte per VBA suchen
13.11.2003 10:05:12
Markus
Hi,

FIND ist da der Befehl, den Wartheitswert kannst Du dann dazu basteln:
Aus der VBA hilfe:

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

With Worksheets(1).Range("a1:a500")
Set c = .Find(2, lookin:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Interior.Pattern = xlPatternGray50
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With

markus
Anzeige
AW: Eintrag in Spalte per VBA suchen
13.11.2003 10:09:08
Albatros
Werd ich gleich mal nachschauen.

Vielen Dank,
Oliver
AW: Eintrag in Spalte per VBA suchen
13.11.2003 10:08:33
WernerB.
Hallo Oliver,

meinst Du so etwas:

Sub Oliver()
Dim var As Variant
Dim SuBe As String
Dim check As Boolean
SuBe = "Suchbegriff"
var = Application.Match(SuBe, Range("A:A"), 0)
If Not IsError(var) Then
check = True
End If
MsgBox check
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).
Anzeige
AW: Eintrag in Spalte per VBA suchen
13.11.2003 10:12:09
Albatros
Genau so. Hab es jetzt mit Find gemacht, läuft aber auch.

Danke,
Oliver
AW: Eintrag in Spalte per VBA suchen
14.11.2003 16:09:37
Albatros
Kannst du mir sagen, wie ich dann die Zelle rausbekomme, in der der Eintrag gefunden wurde.

Danke,
Oliver
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Eintrag in Spalte per VBA suchen


Schritt-für-Schritt-Anleitung

Um einen bestimmten Eintrag in einer Spalte per VBA zu suchen, kannst du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke im Projektfenster mit der rechten Maustaste auf "VBAProject (DeineArbeitsmappe)" und wähle Einfügen > Modul.

  3. Schreibe den VBA-Code: Füge den folgenden Code in das Modul ein:

    Sub SucheInSpalte()
       Dim var As Variant
       Dim Suchbegriff As String
       Dim check As Boolean
       Suchbegriff = "DeinWert" ' Hier den zu suchenden Wert eintragen
       var = Application.Match(Suchbegriff, Range("A:A"), 0)
    
       If Not IsError(var) Then
           check = True
       Else
           check = False
       End If
    
       MsgBox check ' Gibt true oder false zurück
    End Sub
  4. Teste den Code: Schließe den VBA-Editor und führe das Makro aus, um zu sehen, ob der Wert in der Spalte gefunden wurde.


Häufige Fehler und Lösungen

  • Fehler: "Typ nicht übereinstimmend"

    • Lösung: Stelle sicher, dass der Suchbegriff den richtigen Datentyp hat (z.B. ein String für Text).
  • Fehler: "Kein Ergebnis gefunden"

    • Lösung: Überprüfe, ob der Wert tatsächlich in der angegebenen Spalte vorhanden ist.

Alternative Methoden

Wenn du eine andere Methode verwenden möchtest, um in einer Spalte zu suchen, kannst du die Find-Methode nutzen. Hier ein Beispiel:

Sub FindenInSpalte()
    Dim c As Range
    Dim Suchbegriff As String
    Suchbegriff = "DeinWert" ' Hier den zu suchenden Wert eintragen

    With Worksheets(1).Range("A:A")
        Set c = .Find(Suchbegriff, lookin:=xlValues)
        If Not c Is Nothing Then
            MsgBox "Wert gefunden in Zelle: " & c.Address
        Else
            MsgBox "Wert nicht gefunden."
        End If
    End With
End Sub

Diese Methode kann dir helfen, den genauen Speicherort des gesuchten Wertes zu finden.


Praktische Beispiele

  1. Wert in Spalte A suchen: Wenn du nach dem Wert "Test" in der Spalte A suchst, kannst du den Suchbegriff einfach im Code ändern:

    Suchbegriff = "Test"
  2. Suche nach Zahlen: Um nach einer Zahl, z.B. 1000, zu suchen, ändere den Suchbegriff entsprechend:

    Suchbegriff = 1000

Tipps für Profis

  • Verwende Option Explicit: Füge dies am Anfang deines Moduls hinzu, um sicherzustellen, dass alle Variablen deklariert werden.
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um unerwartete Fehler abzufangen und dein Makro robuster zu machen.
On Error Resume Next
  • Leistungsoptimierung: Wenn du große Datenmengen untersuchst, kannst du die Bildschirmaktualisierung deaktivieren, um die Ausführungsgeschwindigkeit zu erhöhen:
Application.ScreenUpdating = False

FAQ: Häufige Fragen

1. Wie kann ich mehrere Werte in einer Spalte suchen?
Du kannst eine Schleife verwenden, um durch ein Array von Suchbegriffen zu iterieren und jeden Wert zu überprüfen.

2. Gibt es eine Möglichkeit, die Suchergebnisse zu zählen?
Ja, du kannst einen Zähler verwenden, um die Anzahl der gefundenen Werte zu zählen, während du die Spalte durchsucht.

3. Kann ich die Suche auf mehrere Spalten ausweiten?
Ja, du kannst die Range in deinem VBA-Code entsprechend anpassen, um mehrere Spalten zu durchsuchen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige