schoonmaken invoervelden in formulier

Status
Niet open voor verdere reacties.

andycorp

Gebruiker
Lid geworden
24 mrt 2011
Berichten
53
op basis van 1 (combobox) veld kies ik een waarde. vervolgens worden de andere gedefinieerde velden gevuld met de bijbehorende info. daarnaast zijn er een aantal invulvelden leeg die gevuld moeten worden.
als alles correct is ingevuld op OK-knop klikken.
nu maakt ie na klikken keurig alle velden leeg behalve 1! very irritating!

wie o wie kan helpen. achter OK-knop zit VBA code (me.projectcode.setfocus)

alvast veel dank voor spoedige hulp
 
Er even vanuit gaande dat je het veld projectcode blanco wil maken zou ik zeggen:

Code:
Me.Projectcode = ""

Als het een combobox is dan kan de code er ook zo uit zien :

Code:
Me.[Keuzelijst met invoervak] = ""

Of misschien naar een nieuw record gaan met :

Code:
DoCmd.GoToRecord , , acNewRec

Ligt allemaal een beetje teveel voor de hand dat je dit bedoelt, zoniet is een beetje duidelijker omschrijven misschien geen overbodige luxe haha.

Groet : Jeroen
 
Jeroen,

dank hiervoor maar zover was ik al haha.
het veld projectcode maakt ie ook keurig leeg.
het gaat mij erom dat ie van de 10 velden er 1 gevuld laat. dit veld moet ook leeg.
 
Ok je hebt dus een aantal velden die ingevoerd moeten worden, waarna je op de "Ok" knop drukt om naar een nieuw record te gaan, en waarbij de focus op het control projectcode komt.

Als je naar een nieuw record gaat en één veld niet leeg word, kan betekenen dat dat ene veld niet de recordset staat. Heb je dit veld wel in de query staan ?
Maar zelfs al zou het veld niet gelinked zijn aan de overige velden, dan nog zou met "" het veld leeg moeten worden.

Misschien dat de access goeroes die hier komen (Octafish bijvoorbeeld) wel snappen wat je precies bedoelt maar ik zou even je DBtje zippen en toevoegen als bijlage hier, dan kunnen zelfs de mindere goden zoals ik (hahaha) er even naar kijken.

Succes

groet : Jeroen
 
Zet bij de gebeurtenis <Bij aanwijzen> de code om het tekstvak of de keuzelijst leeg te maken. Dan heb je bij bladeren naar een (nieuw) record in ieder geval lege tekstvakken en keuzelijsten.
 
grumpf
zip is 1 mb en dat mag niet.
bottom line: ik wil tabel vullen middels formulier wat enerzijds bestaande info uit andere taBELLEN OPHAALT en velden in formulier die handmatig gevuld moeten worden. al die gegevens tesamen moeten in tabel opgeslagen worden.
 
Maak eventueel een nieuwe testdb aan; we hebben maar een paar records nodig om e.e.a. te kunnen testen en verhelpen. Er hoeven geen 5000 records in te zitten ;)
 
ik heb geen gebeurtenis <bij aanwijzen> wel klikken of bijwerken of wijzigen
 
De gebeurtenis <Bij Aanwijzen> heb je wel, maar is een Formuliereigenschap. En daar wil je 'm uiteindelijk ook hebben. Toch? Maak desnoods een functie van je schoonmaakacties; dan zet je alle leegmaak commando's dus in die functie en roep je de functie aan.
 
Hiermee moet het lukken:

Code:
Private Sub OK_Click()
On Error GoTo Err_OK_Click

    DoCmd.GoToRecord , , acNewRec
    Me.Projectcode.SetFocus
    Me.Projectcode = ""
    Me.Employee_name.Requery
    Exit Sub

Err_OK_Click:
    MsgBox Err.Description
    
End Sub
 
Michel, blijft nog een andere vraag staan namelijk dat in de tabel [renewals] is een veld " number" wat gevuld moet worden net als de anderen.
ik zie de waarde wel in het formulier (achter employeename) maar krijg het er niet in.
suggesties?
 
Maak een tekstveld, en koppel dat aan het veld [Renewals]. Dit veld moet gevuld worden door de waarde die je in de keuzelijst selecteert. Ik neem aan dat je uit die keuzelijst een waarde pikt? Anders heeft die keuzelijst uiteraard niet zoveel zin...
 
Michel, als je in de testbase kijkt die ik je heb gestuurd zie je in formulier RENEWALS op het moment dat je een projectcode selecteerd 1 of meerdere employeenames verschijnen. deze toont 4 vwaarden namelijk naam, assignemtn date, rate en een nummer.
dit nummer gaat het om (die krijg ik niet in de tabel). in de tabel renewals staat het tekstveld.

ik krijg het niet voor elkaar. dankk voor je hulp

Michell
 
Maak een tekstvak op je formulier met (bijvoorbeeld) de naam txtNummer. Koppel dit tekstveld aan je tabelveld Nummer. Maak op je keuzelijst een gebeurtenis <Bij Nawerken> met de volgende opdracht:

Code:
Private Sub Employee_name_AfterUpdate()
    Me.txtNummer = Me.Employee_name.Column(3)
End Sub

Als je nu een employee kiest, zal het nummer worden opgeslagen. Als je het nummer niet hoeft te zien (staat immers al op de keuzelijst) kun je 'm verbergen, maar wel laten staan uiteraard!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan