Announcement

Collapse
No announcement yet.

String auf ungefähre Gleichheit überprüfen..

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • String auf ungefähre Gleichheit überprüfen..

    Hallo!

    Gibt es in VB eine Möglichkeit zwei Strings auf ungefähre Gleichheit zu überprüfen? Also zum Beispiel:

    String1 = "Hallo"
    String2 = "Hello123"

    Die Überprüfung sollte ich meinem Fall dann "True" liefern. Oder zumindest sollte Strin1 = "Hallo" & String2 = "HalloB" als Ergebnis "True" liefern. Ich habe es bereits mit der Funktion "Like" probiert, allerdings funktioniert das nicht so wie ich das gerne hätte. Hier mein Code:

    Code:
    If Forms![Projects]![ProjectEntry] Like myObjectLike![Project] Then
                'Abfragen ob wirklich überschreiben, bzw Doublette
                iResponse = MsgBox("Möchten Sie den Datensatz wirklich überschreiben?", vbYesNo, "Warning!")
                If iResponse = vbYes Then
                    DoCmd.Close , , acSaveYes
                    Exit Function
                Else
                    DoCmd.Close , , acSaveNo
                    Exit Function
                End If
            End If
    PS: Die Strings werden aus der Datenbank oder einem Formularfeld geholt, das sollte aber für die Überprüfung keine Rolle spielen, oder?

    Danke schonmal im Vorraus für die Antworten..

  • #2
    Hallo,

    LIKE funktioniert schon und ist auch genau das richtige für Dich, aber genau wie beim SQL LIKE musst Du schon noch ein Platzhalter wie * und/oder ? mit angeben, sonst ist es equivalent wie ein =

    Beispiel:
    ? "Hallo123" LIKE "Hallo*"
    liefert TRUE

    Olaf
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment


    • #3
      Das Problem besteht ja nicht darin einen Variablen String mit einem festen Wert zu vergleichen. Wenn du mal bei mir in den Code schaust, will ich einen Namen aus der Datenbank mit dem Wert eines Formularfeldes vergleichen.. myObjectLike![Project] kann ich ja zum Beispiel nicht splitten um * und ? einzufügen.. also wie kann ich das umsetzen? Ich möchte eine ungefähre Gleichheit der beiden Werte (in den Variablen myObjectLike![Project] und Forms![Projects]![ProjectEntry]).

      Danke schonmal im Vorraus für die Antworten.

      Comment


      • #4
        Aber beides sind doch String-Werte, oder?
        Dann ist es doch kein Problem noch ein "*" für den Vergleich anzuhängen.

        If Forms![Projects]![ProjectEntry] Like myObjectLike![Project] & "*" Then

        Alterntive kannst Du auch mit INSTR arbeiten:

        IF INSTR(1, Forms![Projects]![ProjectEntry] , myObjectLike![Project]) <> 0 THEN

        Olaf
        Olaf Helper

        <Blog> <Xing>
        * cogito ergo sum * errare humanum est * quote erat demonstrandum *
        Wenn ich denke, ist das ein Fehler und das beweise ich täglich

        Comment


        • #5
          Danke, das INSTR hat genau meine Bedürfnisse erfüllt

          Comment

          Working...
          X