Goedendag allen,
Ik heb een formulier met zo'n vier subformulieren die allemaal gelinkt zijn aan dezelfde tabel. Één van deze subformulieren berekent automatisch twee veldwaarden op basis van de ingevoerde informatie. Dit gebeurt met de volgende code:
Deze Sub wordt aangeroepen bij het laden van het formulier en bij het bewerken van één van de parametervelden (`Birth Date`, `Inclusion Date`, `Weight (kg)` of `Height (cm)`). Het probleem is echter dat wanneer dit resulteert in een verandering, dat ik standaard een schrijfconflict krijg wanneer ik naar een andere subformulier ga of het hoofdformulier probeer af te sluiten.
Zijn er mensen die een idee hebben hoe dit komt en hoe ik dit kan voorkomen?
Paar van mijn eigen probeersels:
- Het is zeker dat het van de bovenstaande code afkomstig is, wanneer ik dit weghaal is namelijk het hele probleem over.
- Het geprobeerd om RunCommand acCmdSaveRecord bij unloaden of verliezen van focus van het formulier aan te roepen.
- Me.Dirty op False gezet.
Op dit moment ben ik even helemaal blank, gezien ik totaal niet het minste idee heb hoe dit probleem ontstaat.
Met vriendelijke groet,
Jan Willem
Ik heb een formulier met zo'n vier subformulieren die allemaal gelinkt zijn aan dezelfde tabel. Één van deze subformulieren berekent automatisch twee veldwaarden op basis van de ingevoerde informatie. Dit gebeurt met de volgende code:
Code:
Public Sub AutoMathFields()
Dim BDate As Date, IDate As Date
BDate = Me.[Birth Date].Value
IDate = Me.Inclusion_Date.Value
Me.Inclusion_Age.Value = IIf((Not IsNull(IDate) And Not IsNull(BDate)), DateDiff("yyyy", BDate, IDate) - ((Month(BDate) < Month(IDate)) Or ((Month(BDate) = Month(IDate)) And (Day(BDate) <= Day(IDate)))), "")
Me.BMI__kg_m_2_.Value = IIf((Not IsNull(Me.Weight__kg_.Value) And Not IsNull(Me.Height__cm_.Value)), (Me.Weight__kg_ / (Me.Height__cm_ / 100) ^ 2), "")
End Sub
Deze Sub wordt aangeroepen bij het laden van het formulier en bij het bewerken van één van de parametervelden (`Birth Date`, `Inclusion Date`, `Weight (kg)` of `Height (cm)`). Het probleem is echter dat wanneer dit resulteert in een verandering, dat ik standaard een schrijfconflict krijg wanneer ik naar een andere subformulier ga of het hoofdformulier probeer af te sluiten.
Zijn er mensen die een idee hebben hoe dit komt en hoe ik dit kan voorkomen?
Paar van mijn eigen probeersels:
- Het is zeker dat het van de bovenstaande code afkomstig is, wanneer ik dit weghaal is namelijk het hele probleem over.
- Het geprobeerd om RunCommand acCmdSaveRecord bij unloaden of verliezen van focus van het formulier aan te roepen.
- Me.Dirty op False gezet.
Op dit moment ben ik even helemaal blank, gezien ik totaal niet het minste idee heb hoe dit probleem ontstaat.
Met vriendelijke groet,
Jan Willem