automatische input in forms

Status
Niet open voor verdere reacties.

DelaRuelleDanny

Gebruiker
Lid geworden
30 mei 2016
Berichten
31
Beste
ik ben onlangs omgeschakeld van access 2010 naar 2016 en ben een occasionele gebruiker.
Nu gebeurd er iets waar ik vroeger geen last van had.

In een expressie een form openen en een bepaald veld automatisch invullen met gegevens uit een andere form.

Het ziet er zo uit.


If Me!Onkosten = -1 Then
DoCmd.OpenForm "FrmOnkosten", , , , acFormAdd, acDialog
Forms![FrmOnkosten]![Bonnummer].SetFocus
Form![FrmOnkosten].[ID-activiteit] = 99
..
.

De form opent en er gebeurd niks en als ik dan de form sluit krijg ik een foutyboodschap dat hij de form niet vind.
Het is precies alsof de expressie stop met het openen en de volgende regels niet uitvoerd of wat zie ik over het hoofd?

Danny:(
 
Waarom staat de vraag niet in het Access forum? Dan had ik 'm een stuk sneller gezien :). Je probleem heeft vermoed ik ook niks met SQL te maken, maar alles met je formulieren.
In beginsel is er weinig verschil tussen A2010 en A2016. Behalve dat A2010 beter is, maar dat maakt voor je vraag vermoed ik niet uit. De oorzaak zou wel eens niks met de versie te maken kunnen hebben, maar wellicht wél met de bibliotheken en ingebouwde functies. Je zou de db dus eens kunnen comprimeren en herstellen, en (in het VBA venster) compileren.
Komt daar niks uit (geen fouten dus) dan kun je eens kijken of de macro-instellingen wel goed staan. Als het uitvoeren van macro's in de 2016 versie uit staat, dan doet de macro het natuurlijk niet. Dus zoveel mogelijk van de beveiliging uitzetten.
 
alvast bedankt voor het antwoord maar ik zie ze net en het is laat

morgen probeer ik het uit
 
toch iets gevonden

Al weet ik niet wat maar nu werkt de code precies wel. Heb er alleen wat dagen tussen gelaten :(
De code ziet er nu zo uit

If Me!Onkosten = -1 Then
DoCmd.OpenForm "FrmOnkosten", , , , acFormAdd
'Forms![FrmOnkosten].[Id-Activiteit].SetFocus (is onzichbaar dus niet mogelijk )
Forms![FrmOnkosten].[Id-Activiteit] = [Forms]![frmInputWerk].[Form]![sbfrmInputWerk]![Id-Activiteit]
Forms![FrmOnkosten]![Bonnummer].SetFocus
.
.
.


Alvast bedankt voor de reactie

Danny
 
Laatst bewerkt:
Je doet dat m.i. veel te ingewikkeld; ik geef een waarde meestal me met de OpenArgs variabele en zet die dan m.b.v. de gebeurtenis <Bij Laden> op de juiste plek.
Code:
    If Me!Onkosten = -1 Then
        DoCmd.OpenForm "FrmOnkosten", , , , acFormAdd, , OpenArgs:=Me![Id-Activiteit]
    End If

Code:
Private Sub Form_Load()
    If Me.OpenArgs <> "" Then
    Me![Id-Activiteit] = Me.OpenArgs
    Me.Bonnummer.SetFocus
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan