Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: wenn Zelle bestimme zeichenkette enthält (VBA)

wenn Zelle bestimme zeichenkette enthält (VBA)
22.06.2004 13:02:00
der
Hallo.
Für eine If-Bedingung will ich wissen, ob in einer bestimmmten zelle eine bestimmte zeichenkette vorkommen. Allerdings kann davor und hinter der gesuchten zeichenkette auch noch jede menge anderes stehen. Ist das irgendwie möglich?
Gruß&Dank
Alex
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wenn Zelle bestimme zeichenkette enthält (VBA)
Ulf
If instr([a1],"abc")&gt 0 then
msgbox "abc kommt vor!"
end if
Ulf
AW: wenn Zelle bestimme zeichenkette enthält (VBA)
22.06.2004 13:08:04
FloGo
Hallo Alex
So müsste es gehen:
text="*Zeichenkette*"
If cells(..).value like text then....
FloGo
AW: wenn Zelle bestimme zeichenkette enthält (VBA)
Ingo
mfg Ingo christiansen
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Überprüfung von Zelleninhalten in Excel mit VBA


Schritt-für-Schritt-Anleitung

Um in Excel VBA zu prüfen, ob eine Zelle einen bestimmten Text enthält, kannst Du die InStr Funktion oder die Like Anweisung verwenden. Hier sind die Schritte, um dies zu erreichen:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsm)" und wähle „Einfügen“ > „Modul“.
  3. Schreibe den Code:

    • Verwende den folgenden Beispielcode, um zu prüfen, ob eine bestimmte Zeichenkette in einer Zelle enthalten ist:
Sub PrüfenObZelleTextEnthält()
    Dim text As String
    text = "abc" ' der gesuchte Text
    If InStr(1, Cells(1, 1).Value, text) > 0 Then
        MsgBox text & " kommt vor!"
    End If
End Sub
  1. Führe das Makro aus:
    • Gehe zurück zu Excel und drücke ALT + F8, wähle das Makro „PrüfenObZelleTextEnthält“ und klicke auf „Ausführen“.

Häufige Fehler und Lösungen

  • Fehler: "Typenkonflikt"

    • Lösung: Stelle sicher, dass die Zelle, die Du überprüfst, keinen Fehlerwert enthält. Verwende If Not IsError(Cells(1, 1).Value) Then vor der InStr-Funktion.
  • Fehler: "VBA-Makro wird nicht gefunden"

    • Lösung: Überprüfe, ob Du das Makro in einer Arbeitsmappe gespeichert hast, die Makros zulässt (Dateiformat .xlsm).

Alternative Methoden

Eine alternative Methode ist die Verwendung von Excel-Formeln, wenn Du keinen VBA-Code verwenden möchtest. Hier ein Beispiel:

  1. Verwende die Formel =SUCHEN("abc";A1):

    • Diese Formel gibt die Position des gesuchten Textes in Zelle A1 zurück oder einen Fehler, wenn der Text nicht gefunden wird.
  2. Wenn Du eine Bedingung setzen möchtest:

    • Du kannst WENN verwenden:
      =WENN(SUCHEN("abc";A1); "Text gefunden"; "Text nicht gefunden")

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du den Text in Zellen überprüfen kannst:

  • Beispiel 1: Prüfen, ob eine Zelle den Buchstaben „A“ enthält:

    If InStr(1, Cells(1, 1).Value, "A") > 0 Then
    MsgBox "Die Zelle enthält A!"
    End If
  • Beispiel 2: Verwenden der Like-Anweisung:

    If Cells(1, 1).Value Like "*abc*" Then
    MsgBox "abc ist enthalten!"
    End If

Tipps für Profis

  • Nutze die Trim-Funktion, um unnötige Leerzeichen von den Zelleninhalten zu entfernen, bevor Du die Suche durchführst:

    If InStr(1, Trim(Cells(1, 1).Value), "abc") > 0 Then
    MsgBox "abc kommt vor!"
    End If
  • Setze die Option Compare Text am Anfang Deines Moduls, um die Groß- und Kleinschreibung bei der Überprüfung zu ignorieren.


FAQ: Häufige Fragen

1. Wie kann ich prüfen, ob eine Zelle mehrere Zeichen enthält? Verwende die InStr Funktion in einer Schleife oder kombiniere Like mit Wildcards.

2. Was mache ich, wenn die Zelle mehrere Textteile enthält? Du kannst die Split-Funktion verwenden, um den Inhalt der Zelle in ein Array zu zerlegen und dann jedes Element zu überprüfen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige