2016-06-08 15 views
0

Ich verwende Allen Browne-Methode zum Erstellen und Verwalten mehrerer Instanzen eines Formulars. Ich bin fest, wie auf Steuerelemente oder Eigenschaften für eine bestimmte Instanz des Formulars von einem VBA-Modul verwiesen wird. Hier ist, wie ich eine neue Instanz zu öffnen:Access 2007/VBA - Mehrere Instanzen des Formulars, Update-Steuerelemente für bestimmte Instanz von Modul

'Purpose: Open an independent instance of form frmMasterRecord. 
Dim frm As Form 

'Housekeeping 
myFilter = Trim("" & myFilter) 

'Open a new instance, show it, and set a caption. 
Set frm = New Form_frmMasterRecord 
frm.ServerFilter = myFilter 
frm.ServerFilterByForm = True 
frm.Requery 
frm.Visible = True 

'Append it to our collection. 
clnMasterRecord.Add Item:=frm, Key:=CStr(frm.hwnd) 

Set frm = Nothing 

Angenommen, ich habe drei Instanzen des frmMasterRecord offen. Wie rufe ich eine Unterfunktion in einem Modul auf und lässt sie Steuerelemente nur auf der aufrufenden Instanz des Formulars manipulieren?

+0

Was der Code Sie versucht haben? – dbmitch

Antwort

0

Pass einen Verweis auf die Berufung Form:

Result = MyExternalFunction(Me) 

und

Public Function MyExternalFunction(ByRef frm As Form) As Boolean 

    ' Do stuff with object frm. 

    MyExternalFunction = Result 

End Function 
+0

Brilliant, das funktioniert perfekt! Vielen Dank! – GeekInOhio