ernstcramer
Gebruiker
- Lid geworden
- 14 dec 2015
- Berichten
- 66
Bij een formulier in Access, waar je gegevens wilt invoeren, heb je onderin de navigatieknoppen zitten. Daar zit ook zo'n mooi veldje bij welk record het is van hoeveel. En als je filtert wordt vermeldt hoeveel records er in het filter zitten.
Ik heb echter de navigatieknoppen apart gedefinieerd, omdat er aan het navigeren acties vastzitten in verband met de gegevens van het record. Bepaalde velden moeten wel of niet zichtbaar worden, afhankelijk van de inhoud van het record.
Als je bij de oorspronkelijke navigatieknoppen het laatste record hebt, en dan "pijltje rechts" doet, opent Access een nieuw record. Maar dat kan je weer ongedaan maken met pijltje "naar links". probleem opgelost.
Ik had in eerste instantie via de wizard de actieknop pijltje "volgend record" gemaakt. Dan heb je de volgende code:
voor toevoegen nieuw record : DoCmd.GoToRecord , , acNewRec
voor volgend record: DoCmd.GoToRecord , , acNext
Ik heb dat gewijzigd in: DoCmd.RunCommand acCmdRecordsGoToNew resp. DoCmd.RunCommand acCmdRecordsGoToNext
daarna run ik dus de noodzakelijke settings: maar dan is het nummer van het record ook al een feit.
Is dit te voorkomen?
Code voor het nieuwe record:
Code van de Call:
Ik heb echter de navigatieknoppen apart gedefinieerd, omdat er aan het navigeren acties vastzitten in verband met de gegevens van het record. Bepaalde velden moeten wel of niet zichtbaar worden, afhankelijk van de inhoud van het record.
Als je bij de oorspronkelijke navigatieknoppen het laatste record hebt, en dan "pijltje rechts" doet, opent Access een nieuw record. Maar dat kan je weer ongedaan maken met pijltje "naar links". probleem opgelost.
Ik had in eerste instantie via de wizard de actieknop pijltje "volgend record" gemaakt. Dan heb je de volgende code:
voor toevoegen nieuw record : DoCmd.GoToRecord , , acNewRec
voor volgend record: DoCmd.GoToRecord , , acNext
Ik heb dat gewijzigd in: DoCmd.RunCommand acCmdRecordsGoToNew resp. DoCmd.RunCommand acCmdRecordsGoToNext
daarna run ik dus de noodzakelijke settings: maar dan is het nummer van het record ook al een feit.
Is dit te voorkomen?
Code voor het nieuwe record:
Code:
Private Sub toevoegen_Click()
'---toevoegen nieuw record
DoCmd.RunCommand acCmdRecordsGoToNew
Call decoder_Click
materieelsoort.SetFocus
End Sub
Code van de Call:
Code:
Private Sub decoder_Click()
If Me![decoder] = 1 Then
Me![adres].Visible = False
Me![adres] = "0"
Me![HVM].Visible = False
Me![HVM] = 0
Me![geluid].Visible = False
Me![geluid] = 0
Me![LED].Visible = False
Me![LED] = 0
Me.sF_functietoets.Visible = False
Else
Me![adres].Visible = True
Me![HVM].Visible = True
Me![geluid].Visible = True
Me![LED].Visible = True
Me.sF_functietoets.Visible = True
End If
End Sub