PDA

Vollständige Version anzeigen : Berechnung oder manuelle Eingabe


Gast
11.05.2004, 10:36
Ich habe zwei Textfelder [a], [b] in Formular [FormTest].

Jetzt soll folgendes möglich werden, Code:

If Me!b > 0,00 Then
Me!a = Me!b else
Me!a = manuelle Eingabe ´d. h. ich fülle das Feld [a] per Tastatur aus

Geht so etwas?

stpimi
11.05.2004, 10:43
Wird Feld B auch erst eingegeben?
Dann kannst Du im Ereignis AfterUpdate von Feld B schreiben:

If Me!FeldB > 0 Then
Me!FeldA = Me!FeldB
Me!FeldA.Locked = True 'damit nichts überschrieben werden kann
else
Me!FeldA.Locked = False
Me!FeldA.SetFocus
End if

Mfg, Michael

jmc
11.05.2004, 10:46
Hallo ??GAST??

ja - geht schon, aber nur, wenn zuerst b ausgefüllt wird ....

du musst im Ereignis "Nach Aktualisierung" den entsprechenden Code schreiben:


.... da war mal wieder Michael schneller ... siehe oben

WDKA-Jürgen
11.05.2004, 10:47
hallo gast,
du hast dir ja die Lösung schon fast selber gegeben.

Soll jetzt nach dem Wert 0,00 abgefragt werden oder wenn das Feld leer ist ??
Wenn es sich um Textfelder handelt und nach einem leeren Feld abgefragt werden soll muss die wenn funktion so lauten :
am besten beim verlassen von Feld B


if not isnull (b) then
me.a = me.b
else
msgbox "Bitte geben Sie den Wert für Feld A namuell ein"
me.a.setfocus
end if

Gast
11.05.2004, 11:14
Danke, klappt fast perfekt. (Eure Code´s laufen natürlich einwandfrei)

Was versteht Access unter dem Ereignis "Nach Aktualisierung"
und gibt es dafür einen VBA Befehl? (Me!FeldA.Update ´funzt leider nicht :-(

stpimi
11.05.2004, 11:17
Klick mit der rechten Maustaste in Deinem Form auf das FeldB, wähle im Kontextmenü den Eintrag Eigenschaften.
Auf dem Register Ereignis findest Du eine Zeile "NachAktualisierung" oder "AfterUpdate". Dort wählst Du über DropDown Ereignisprozedur und klickst auf die 3 Punkte rechts neben dem Eingabefeld.
In diesem Codeeditor schreibst Du meinen Code zwischen
Private Sub .... und
End Sub

hinein.

Mfg, Michael

Gast
11.05.2004, 11:28
Danke Michael,

war mir aber bekannt.

Ich habe mittlerweile versch. Buttons mit VBA wofür ich "Aktualisierung" als VBA Code brauche.

Code:
.
.
.
Me!FeldA.Aktualisieren `was steht für aktualisieren?
End Sub