2016-05-20 4 views
1

Ich bekomme Laufzeitfehler 424 beim Versuch, einfache Cascading-Kombinationsfelder zu erstellen.Access 2010 Cascading-Kombinationsfelder Laufzeitfehler 424

Option Compare Database 

Private Sub ModelID_Change() 

    SizeID.Value = Null 
    SizeID.Requery 

End Sub 

Private Sub Form_Current() 

    SizeID.Requery 

End Sub 

Das ist der Code, den ich verwende. irgendwelche Ideen?

+0

haben Sie diese Routinen manuell im VBA-Editor erstellt oder haben Sie sie über den Code Builder für Formulareigenschaften (Ereignisse) aufgerufen? – LiamH

+0

Ich habe sie manuell erstellt – cpullen

+0

'SizeID' ist der Steuerelementname einer Combobox auf dem gleichen Formular? – Andre

Antwort

0

Nach meinem Kommentar glaube ich, das Problem ist nicht Ihr Code, es ist, dass der VB-Editor Ihr Formular nicht erkennt.

Damit der VB-Editor das Formular erkennt, müssen Sie den Code Builder mindestens einmal aufrufen.

Wechseln Sie in der Ansicht Ihres Formulars zu Eigenschaften> Ereignisse. Dann sehen Sie unter dem aktuellen Ereignis wird es leer sein.

Sie können auf die drei Punkte (Ellipse) klicken und Code Builder klicken. Dies öffnet den VB-Editor und die Unterroutinen werden erkannt. Wenn Sie nun die Eigenschaften zurückgeben, sehen Sie "Event Procedure".

Ich hoffe, das hilft!

+0

Entschuldigung, ich bin völlig neu in VBA. Wenn ich den Code Builder öffne "Private Sub Form_Current() End Sub" erscheint. Wo passe ich meinen Code hinein? Wenn ich das in irgendeiner Weise bearbeite, wird es wieder allgemein und nicht mit einem bestimmten Teil des Formulars verknüpft. – cpullen

+0

Setzen Sie den Code zwischen 'private sub' und' end sub'. Ich bin mir nicht sicher, ob ich den nächsten Teil Ihres Kommentars verstehe. Zusätzlich würde ich 'modelID_Change()' durch 'private sub modelID_BeforeUpdate()' ersetzen – LiamH

+0

Ich bekomme immer noch den gleichen 'Laufzeitfehler 424' für die Zeile 'SizeID.Requery' unter dem' Form_current' – cpullen