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

Forumthread: Nicht "case sensitive" suchen

Nicht "case sensitive" suchen
26.07.2007 15:48:00
Tobias
Hallo Freunde .. ich habe ein kleines Problem.
Ich habe eine automatische suche für PLZ bzw. den dazugehörigen Ort.
Wenn man in B2 den Ort eingibt sucht er sich die passende PLZ dazu und schreibt diese in A2 ( oder gibt eine auswahl fals es mehrere PLZ für diesen Ort gibt)
Nur ist das leider case sensitive.
In der Beispieldatei habe ich Bremen als Beispiel drinnen.
Suche ich nach Bremen werden die PLZ gefunden ... gibt man aber bremen eine dann findet er nichts.
Wie kann ich dieses Skript hinbekommen das es nicht case sensitive ist ?
https://www.herber.de/bbs/user/44469.zip
lg
Tobias

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
UCase..
26.07.2007 17:02:51
Ramses
Hallo
If UCase(arr(iCounter, 1)) = Ucase(Target) Then
Gruss Rainer

AW: UCase..
26.07.2007 17:45:00
Tobias
Danke Rainer.
Nur noch eine Sache. Kann man es so machen das der 1.Buchstabe des Ortes nach der Suche groß geschrieben wird ?

AW: UCase..
26.07.2007 18:07:00
Hajo_Zi
Hallo Tobias,
StrConv(Target, vbProperCase) ' Wortanfang groß

Anzeige
AW: UCase..
26.07.2007 18:38:44
Tobias
Ja, aber wie binde ich es ein ?

AW: UCase..
26.07.2007 18:43:08
Hajo_Zi
Hallo Tobias,
genauso wie das Ucase. Du wolltest doch nur Ucase ersetzen?
Gruß Hajo

AW: UCase..
26.07.2007 21:03:14
Tobias
Ich weiss leider nicht wie ich es einbinden soll :(

Anzeige
AW: UCase..
26.07.2007 21:13:00
Hajo_Zi
Hallo Tobias,
ich kann dazu nichts schreiben, da ich den aktuellen Code nicht sehe.
Gruß Hajo

AW: UCase..
26.07.2007 22:01:38
Ramses
Hallo
dazu must du schon sagen, WO das geändert werden soll.
Bei deiner Mappe die du geschickt hast fehlt die Userform (UF1) und wo sollen dann die Werte geändert werden ?
Gruss Rainer
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Nicht "case sensitive" suchen in Excel


Schritt-für-Schritt-Anleitung

Um sicherzustellen, dass Deine Excel-Suchfunktion nicht "case sensitive" ist, kannst Du den UCase-Befehl in VBA verwenden. Hier ist, wie Du vorgehen kannst:

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (DeineDatei.xlsx)" > Einfügen > Modul.

  3. Füge den folgenden Code ein:

    Sub SuchePLZ()
       Dim arr As Variant
       Dim Target As String
       Dim iCounter As Long
    
       ' Beispielarray für PLZ und Ort
       arr = Array(Array("Bremen", "28195"), Array("Hamburg", "20095"))
    
       Target = InputBox("Bitte den Ort eingeben:")
    
       For iCounter = LBound(arr) To UBound(arr)
           If UCase(arr(iCounter)(0)) = UCase(Target) Then
               MsgBox "Die PLZ für " & arr(iCounter)(0) & " ist " & arr(iCounter)(1)
               Exit Sub
           End If
       Next iCounter
    
       MsgBox "Ort nicht gefunden."
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, um die PLZ für den eingegebenen Ort zu finden, unabhängig von der Groß- oder Kleinschreibung.


Häufige Fehler und Lösungen

  • Fehler: "Ort nicht gefunden", obwohl der Ort existiert.

    • Lösung: Stelle sicher, dass Du UCase für den Vergleich verwendest, um die Suche "case insensitive" zu gestalten.
  • Fehler: Der erste Buchstabe des Orts wird nicht großgeschrieben.

    • Lösung: Verwende StrConv(Target, vbProperCase), um den ersten Buchstaben nach der Suche automatisch großzuschreiben.

Alternative Methoden

Eine andere Möglichkeit, eine "case insensitive" Suche durchzuführen, ist die Verwendung von Excel-Formeln. Du könntest die Funktionen SVERWEIS oder VERGLEICH kombinieren mit GROSS oder KLEIN, um die Groß- und Kleinschreibung zu ignorieren. Beispiel:

=SVERWEIS(GROSS(B2), GROSS(A1:A10), 1, FALSCH)

Hierbei wird die Eingabe in B2 und der Bereich A1:A10 in Großbuchstaben umgewandelt.


Praktische Beispiele

Angenommen, Du hast eine Liste von Städten und deren PLZ in den Zellen A1 bis B10. Um die PLZ für "bremen" zu finden, kannst Du das VBA-Skript aus der Schritt-für-Schritt-Anleitung verwenden oder die oben genannte Formel in einer Zelle eingeben.


Tipps für Profis

  • Wenn Du oft mit "case sensitive" und "case insensitive" Suchen arbeitest, überlege, eine benutzerdefinierte Funktion in VBA zu erstellen, die diese Suche automatisiert.
  • Nutze Option Compare Text am Anfang Deines Moduls, um die Standardvergleichsart auf "case insensitive" zu setzen.

FAQ: Häufige Fragen

1. Was bedeutet case sensitive? Case sensitive bedeutet, dass die Groß- und Kleinschreibung bei Vergleichen berücksichtigt wird. Zum Beispiel wird "Bremen" und "bremen" als unterschiedlich angesehen.

2. Ist VBA case sensitive? Ja, VBA ist standardmäßig case sensitive, daher ist es wichtig, Funktionen wie UCase oder LCase zu verwenden, um Vergleiche unabhängig von der Groß- oder Kleinschreibung durchzuführen.

3. Wie wird "fals" geschrieben? Der korrekte Ausdruck ist "falsch".

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