Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: TomTom2903 am März 22, 2013, 09:11:01

Titel: Eindeutiger Wert aus Werten und Buchstaben erstellen
Beitrag von: TomTom2903 am März 22, 2013, 09:11:01
Hallo,
habe folgendes Problem.
Ich benötige zum eindeutigen Codieren einen zweistelligen Wert.
Dieser Wert darf sich aus den Zahlen 0-9 und aus den Buchstaben  A - Z ergeben (Groß- und Kleinschreibung nicht berücksichtigt).
Also d.h. er kann von "00" bis "99" die Zahlen nehmen im Anschluss muss er dann die Buchstaben mit einbeziehen. "A0 - A9", "0A - 9A", "B0 - B9", "0B - 9B".

Hat das schon mal jmd gemacht oder weiß jmd wie man das umsetzt?
VG
Tom
Titel: Re: Eindeutiger Wert aus Werten und Buchstaben erstellen
Beitrag von: TomTom2903 am März 22, 2013, 09:52:12
Zitat von: TomTom2903 am März 22, 2013, 09:11:01
Hallo,
habe folgendes Problem.
Ich benötige zum eindeutigen Codieren einen zweistelligen Wert.
Dieser Wert darf sich aus den Zahlen 0-9 und aus den Buchstaben  A - Z ergeben (Groß- und Kleinschreibung nicht berücksichtigt).
Also d.h. er kann von "00" bis "99" die Zahlen nehmen im Anschluss muss er dann die Buchstaben mit einbeziehen. "A0 - A9", "0A - 9A", "B0 - B9", "0B - 9B".

Hat das schon mal jmd gemacht oder weiß jmd wie man das umsetzt?
VG
Tom

Wäre dann eine Art AutoWert Funktion mit entsprechendem Wertebereich...
Titel: Re: Eindeutiger Wert aus Werten und Buchstaben erstellen
Beitrag von: MzKlMu am März 22, 2013, 10:10:24
Hallo,
zum eindeutigen Codieren eines Datensatzes nimmt man einen einfachen Autowert als Primärschlüssel.
Deine Beschreibung für den Code ist ziemlich unklar.
Du sprichst von 0-99 aber die 99 ist nicht zu sehen.
Dann schreibst Du im Anschluss die Buchstaben, aber im Beispiel sind auch Buchstaben vorn.

Alles etwas verwirrend.

Üblicherwiese würde man hier 2 Felder anlegen eines für die Zahl und eines für die Buchstaben. Über beide Felder dann einen eindeutigen Index.

Was ist denn die Aufgabe der Codierung?

Titel: Re: Eindeutiger Wert aus Werten und Buchstaben erstellen
Beitrag von: bahasu am März 22, 2013, 10:56:20
Hallo,

sind für Dich auch Hexadecimal-Werte machbar?
Wenn Du es schaffst, eindeutige Zahlen zu erstellen (am besten via autowert: siehe Hinweis von Klaus), lassen die sich mit einer hex-Funktion umwandeln: siehe im Anhang die Abfrage.

Harald

[Anhang gelöscht durch Administrator]
Titel: Re: Eindeutiger Wert aus Werten und Buchstaben erstellen
Beitrag von: daolix am März 22, 2013, 18:15:02
Hallo

alternativ könntest du folgendes probieren:

Standardautowert in deiner Tabelle und mit mit
Function ConvStrFromLongX(ByVal l As Long) As String
    Dim b(1 To 4) As Byte
    Dim i As Long
    For i = 4 To 1 Step -1
        b(i) = l Mod 36
        l = l - b(i)
        b(i) = b(i) + IIf(b(i) < 10, 48, 55)
        l = l \ 36
    Next
    ConvStrFromLongX = Chr(b(1)) + Chr(b(2)) + Chr(b(3)) + Chr(b(4))
End Function

aus dem Autowert die entsprechenden Strings erzeugen.
in diesen bsp wird von 4 Zeichen ausgegengen, daher ist die Rückgabe 4 Zeichen, mittels right$ kann man es aber kürzen. auch ist hier der Werteberich etwas größer(0 - 1679615 statt 0 - 1295 für 2 Zeichen). Diese Funktion in eine Abfrage eingebaut und diese den Autowert übergeben.