Januar 18, 2022, 11:17:30

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


Standardwert für Formularfeld berechnen

Begonnen von Christian5467, Januar 02, 2022, 10:53:20

⏪ vorheriges - nächstes ⏩

Christian5467

Hallo zusammen,
ich möchte eine Kundendatei erstellen. Ich habe dazu eine Tabelle, welches ein Auto ID Feld hat, dieses beginnt Accesstypisch bei 1 und wirf hochgezählt.
Ich möchte meine Kundennummern jedoch mit K400000 + den Wert der AutoID vergeben, also z.B. K4000001, K4000002, .... Dieser Wert soll bei Aktivierung des Formularfeldes autromatisch als Standard angezeigt werden, aber überschreibbar sein.
Wie stelle ich das am Besten an?

Vielen Dank und Gruß
Christian

Beaker s.a.

Hallo Christian,
Für fortlaufende Nummern ist die AutoWert-Id nicht geeignet. Da entstehen
schon mal Lücken. Nimm ein zweites Zahlenfeld, dass du mit
"K " & DMax("frtlNr", "DeineTabelle") +1hochzählen kannst.
Weitere Hinweise zu fortlaufenden Nummern findest du hier und in anderen
Foren zu Hauf.

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

MzKlMu

Hallo,
über den Standardwert geht das nicht. Der Autowert ist ja beim Öffnen des Formulars noch nicht bekannt, daher kann der Standardwert nicht vorbelegt werden.

Du kannst aber die Kundennummer setzen, wenn z.B. im Feld für den Kundennamen etwas eingetragen wird. Aber nur, wenn ein neuer Datensatz erstellt wird.
Im Ereignis "Nach Aktualisierung des Namensfeldes:
If Me.NewRecord = True Then
   Me.Kundennummer = "K400000" & Me.Autowertfeld
End If
Gruß
Klaus

Christian5467

Super, vielen Dank.
Das habe ich gesucht.

Gruß
Christian

Beaker s.a.

Das so die Kundennr. bei jeder Zehnerpotenz immer länger wird hast du bedacht?
Ansonsten
If Me.NewRecord = True Then
   Me.Kundennummer = "K" & (400000 + Me.Autowertfeld)
End If
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

Christian5467

Nein, hatte ich so noch nicht. Aber vielen Dank. Jetzt ist es perfekt!
Danke und Gruß
Christian

ebs17

Anmerkungen:

"Auto ID Feld" und "überschreibbar sein" widerspricht sich und ist nicht immer problemfrei.

Es macht erheblich Sinn, eine Zahl eine Zahl sein zu lassen und nur für die Anzeige ein Format zu verwenden. Ein Hochzählen einer Zahl ist deutlich einfacher.
? Format(27, "K4000000")
K4000027
Mit freundlichem Glück Auf!

Eberhard

Beaker s.a.

Hallo Eberhard,
Zitat"Auto ID Feld" und "überschreibbar sein" widerspricht sich und ist nicht immer problemfrei.
Wie man's nimmt. Wenn ihm die lückenlose flfd. Nummer wichtiger ist
als die Konsistenz zwischen AutoWert und Kundennr. ...

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.