Verplicht Veld

Status
Niet open voor verdere reacties.

malawi

Gebruiker
Lid geworden
10 mrt 2009
Berichten
169
Hallo

Ik heb een formulier met een aantal verplichte velden. Tevens staan op dit formulier een aantal navigatie buttons naar andere formulier.
Als ik deze aan klik dan wil ik graag dat ik eerst een melding krijg van de eventuele verplichte velden die nog niet zijn ingevuld.
Hoe kan ik dit bewerkstelligen.

Al vast bedankt,

Ewald
 
Ik zou het omdraaien, en de knoppen uitschakelen tot alle verplichte velden (voor die formulieren) zijn ingevuld. Daarmee geef je aan de gebruiker een duidelijk signaal af: de knop doet het pas als alles is ingevuld.
 
Lijkt mij ook een goed plan.

Hoe kan ik dit bewerkstelligen?

Ewald
 
Geef de verplichte velden in ieder geval een andere kleur, met een verklaring in voet- of koptekst dat ze verplicht zijn. dan weet de gebruiker waar hij aan toe is. Je kunt op je formulier een gebeurtenis maken die een algmene variabele gebruikt en waar je voor alle verplichte velden een getal bij optelt als het veld is ingevuld. Ik gebruik daar meestal een factor 2 bij, zodat je altijd unieke waarden krijgt. Als het totaal voldoet aan de gewenste som, maak je de knoppen actief. Voorbeeldje:
Je hebt 4 verplichte velden. Die krijgen de waarden 1;2;4 en 8. dat levert een totaal op van 1+2+4+8=15. Als veld 3 nog niet is ingevuld en de rest wel, dan is waarde van de variabele 11. Is natuurlijk geen 15, en dus blijven de knoppen uitgeschakeld.
De waarden optellen doe je met een functie die je bij elk veld bij de gebeurtenis <Na bijwerken> aanroept.
 
De verplichte kleuren had ik al gedaan. Waarschuwing staat er nu ook bij. Alleen is het mij niet duidelijk waar de de getallen moet plaatsen en waar bij welke gebeurtenis in het formulier de totalen moet plaatsen en hoe?

Ewald
 
Die getallen staan nergens; die vul je met een functie. Iets als:
Code:
Private Function Check() As Boolean
Dim iChk As Integer
    With Me
        If .kzl_merk & "" <> "" Then iChk = 1
        If .kzl_model & "" <> "" Then iChk = iChk + 2
        If .kzl_groep & "" <> "" Then iChk = iChk + 4
        If .kzl_kleur & "" <> "" Then iChk = iChk + 8
    End With
    If iChk = 15 Then Check = True
End Function
Deze functie levert TRUE of FALSE op. En dat check je bij je verplichte velden:
Code:
Private Sub kzl_model_AfterUpdate()
    If Check = True Then Me.cmdForm1.Enabled = True
End Sub
 
De 2e code is mij duidelijk waar ik die moet plaatsen. Waar plaats ik de 1e code?
 
De eerste code zet je ofwel op je formulier, ofwel in een module. Omdat het specifiek voor één formulier is bedoeld, zou ik 'm op het formulier houden.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan