Wat opvalt: je gebruikt DLookup om een waarde op te zoeken (KostID) die waarschijnlijk een autonummer terugleest, en geen prijs (wat kostprijs zou moeten zijn denk ik), en je gebruikt daarvoor de waarde uit het veld dat je gaat invullen. Je zoekt dus in tblFuncties naar een KostID waarvan het veld [Kostprijs] gelijk is aan Me.Kostprijs. Maar Me.Kostprijs is vermoed ik leeg, want die probeer je juist te vullen! Dus dat gaat oneindig lang duren, vrees ik. Daarnaast snap ik [Kostprijs] = '" & Me.Kostprijs & "'" ook niet, want je behandelt Kostprijs daarmee als tekst. En mij lijkt dat [Kostprijs] een Valutaveld zou moeten zijn, geen tekstveld.