Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: hdkneip am Mai 18, 2019, 22:08:15

Titel: Fehler Instr
Beitrag von: hdkneip am Mai 18, 2019, 22:08:15
Hallo
Ich habe keinen Erfolg mit
myhex = Hex(9)
npos4 = InStr(eingabe, myhex)
  oder
npos4 = InStr(eingabe, Hex(9))
npos zeigt mir >69< !
Eingabe:
09 34 34 35 30 09 41 42 41 43....
Was mache ich falsch?
Gruß von Rhein und Mosel
Dieter
Titel: Re: Fehler Instr
Beitrag von: DF6GL am Mai 19, 2019, 09:26:26
Hallo,

sinnvoll wäre, den kompletten Code der Prozedur zu zeigen....

Dein Beispiel liefert bei mir korrekt die Position 2:

?Instr("09 34 34 35 30 09 41 42 41 43",Hex(9))
2


Titel: Re: Fehler Instr
Beitrag von: hdkneip am Mai 19, 2019, 10:26:51
Hallo Franz
Eingabe ist hexadecimal:
x'09 34 34 35 30 09 41 42 41 43....'
npos4 sollte 1 zeigen
Gruß
Dieter
Titel: Re: Fehler Instr
Beitrag von: steffen0815 am Mai 19, 2019, 11:09:17
Hallo,
ZitatEingabe ist hexadecimal
Nein, das ist ein ganz normaler String (Text).

Instr() ist für Zahlen gar nicht definiert:
Zitat von: HilfeInStr([Start, ]Zeichenfolge1, Zeichenfolge2[, Vergleich])

Zeig mal bitte deinen kompletten Code.
Titel: Re: Fehler Instr
Beitrag von: DF6GL am Mai 19, 2019, 11:24:23
Hallo,

@hdkneip:
Vielleicht führt eine Beschreibung der dahinterliegenden Aufgabe zu einem konkreten und besserem Lösungsweg.
Titel: Re: Fehler Instr
Beitrag von: Beaker s.a. am Mai 19, 2019, 11:40:50
Hallo Dieter,
Zitatx'09 34 34 35 30 09 41 42 41 43....'
npos4 sollte 1 zeigen
Tja, dann musst du nach "09" suchen, und nicht nach "9"
myhex = Hex(9)
If Len(myhex) = 1 then
    myhex = "0" & myhex
End If
npos4 = InStr(eingabe, myhex)


gruss ekkehard
Titel: Re: Fehler Instr
Beitrag von: hdkneip am Mai 19, 2019, 16:15:04
Hallo Franz, Steffen, Ekkehard
Danke für eure Bemühungen.
Ich denke nun, dass man mit INSTR keine ASC- Werte suchen kann.
INSTR behaltet ja STRING.
Dieser Wert X'09' ist ja die Definition für TAB.
Ich bin nur ein Hobbyist, Jahrgang 1936.
Nix für ungut.
Gruß
Dieter
Titel: Re: Fehler Instr
Beitrag von: MzKlMu am Mai 19, 2019, 16:31:05
Hallo,
ZitatDieser Wert X'09' ist ja die Definition für TAB.
Nein, Der Asc Code für Tab ist 9 , Asc Werte sind Zahlen.
Hex(9) = 9 und die erste  9 ist an Pos 2, also alles richtig.

Beschreibe doch bitte mal, was Du da vorhast.
Und willst Du da genau mit dem Hex ?
Titel: Re: Fehler Instr
Beitrag von: hdkneip am Mai 20, 2019, 14:54:29
Hallo Klaus
Bei meinen Versuchen habe ich mal X'9' oder hex(9) benutzt, ohne zu wissen das HEX eine Function ist.
Ich will tatsächlich den Code für TAB (ASC 9) aus der Eingabe ermitteln.
Ich habe mit einer kleinen Routine das Problem gelöst.
Gruß
Dieter