PDA

Vollständige Version anzeigen : Formular Wert erhöhen


Austin
18.04.2009, 06:20
Liebe Profis!

Ich hab in einem Formular ein Zahlenfeld in dem ich den Wert automatisch um 1 erhöhen möchte. Ich habe folgendes Ereignis bei Fokuerhalt reingeschrieben:

Private Sub HERBARNUMMER_GotFocus()
Dim X As Integer
X = (DMax("[HERBARNUMMER]", "TBL_MOOSE")) + 1
DoCmd.GoToRecord , , acNewRec
Me!HERBARNUMMER = X
End Sub


Es klappt auch aber wenn im Feld etwas bereits enthalten ist, wird es z.B. bei der Datensatznavigation gelöscht. Ich bräuchte als noch eine Variante wo geprft wird, ob schon etwas drinnen steht. Da ich wirklich kein Guru bin, wäre es genial wenn Ihr mir mal wieder helfen könntet!

Außerdem wird im Formular nicht mehr nach dem Feld "Herbarnummer" sortiert, wenn ich dieses Ereignis reinschreibe was ebenfalls nicht korrigiert werden muss.
Liebe Grüße
Austin

rapunzel
18.04.2009, 09:40
Hallo Austin,

mir ist nicht ganz klar, wieso du auf Null prüfen willst? Versuche doch mal folgenden Code, Textfelder und Tabellenbezeichnung musst du natürlich anpassen:

Private Sub MonatsNr_Exit(Cancel As Integer)
'zählt die GWG_Nr jeweils um 1 hoch
'MaxWert zu dem +1 addiert werden soll, wenn keine Werte vorhanden sind

Dim lfd As Long

If Me.NewRecord Then
lfd = Nz(DMax("[GWG_Nr]", "tblGWG")
[GWG_Nr] = lfd + 1
End If

End Sub

Zu deiner Sortierfrage: nimm mal alle Sortierkriterien in der Entwurfsansicht raus, komprimiere und gehe dann normal in dein Formular in die Bearbeitungsansicht und klicke dann auf das Symbol zum Sortieren. I.d.R. trägt Access dann automatisch das Sortierkriterium wieder ein.

Austin
18.04.2009, 18:05
Herzlichen Dank das war es! :) :) :) :) :)

Schönes Wochende aus dem Salzburger Land
Austin

rapunzel
18.04.2009, 18:12
Freut mich, bitte setze deinen Thread auf erledigt (http://www.ms-office-forum.net/forum/showthread.php?t=102899#erledigen).

Schönes WE aus dem sonnigen NÖ :)