Objekt gesetzt?!

Hallo Forum.
Ich verwende ein globales Recordset-Object. Die Objectvariable wird global gesetzt: Public gobjRstFormula As DAO.Recordset
Nun habe ich eine function, die auf dieses Object zugreift. Je nachdem, durch welche Sub die function aufgerufen wird, ist das Recordset-Object bereits über Set zugewiesen, oder auch nicht.
sieht so aus:
Set gobjRstFormula = CurrentDb.OpenRecordset(„tblJCFFormula“, dbOpenTable)
gobjRstFormula.Index = „PrimaryKey“

Kurz, die function soll den Set Befehl selbst ausführen wenn dies noch nicht geschehen ist. Ansonsten soll sie die Füße still halten.

Wie kann ich ermitteln, ob der Set Befehl für eine Objektvariable schon erfolgt ist?

Ich dachte eine VBA function wie IsObject(). Die checkt aber nur den Datentyp der Variablen und liefert immer True.

Greetz
Dom

Hallo Forum.

Hallo!

Ich verwende ein globales Recordset-Object. Die Objectvariable
wird global gesetzt: Public gobjRstFormula As DAO.Recordset
Nun habe ich eine function, die auf dieses Object zugreift. Je
nachdem, durch welche Sub die function aufgerufen wird, ist
das Recordset-Object bereits über Set zugewiesen, oder auch
nicht.

Wie kann ich ermitteln, ob der Set Befehl für eine
Objektvariable schon erfolgt ist?

Probier es mal so:

If gobjRstFormula Is Nothing Then
 Set gobjRstFormula = CurrentDb.OpenRecordset("tblJCFFormula",dbOpenTable)
 gobjRstFormula.Index = "PrimaryKey"
End If

Gruß, tester!

Probier es mal so:

If gobjRstFormula Is Nothing Then
Set gobjRstFormula =
CurrentDb.OpenRecordset(„tblJCFFormula“,dbOpenTable)
gobjRstFormula.Index = „PrimaryKey“
End If

Gruß, tester!

Hi Tester,
das ist es. Besten Dank.

PS: Manchmal hat man beim proggen echt n Knoten im Hirn. Da ich meine benutzten Spielzeuge immer ordentlich mit „Set obj = Nothing“ in den Schrank zurück lege (metaphorisch gesprochen), hätte ich auch selbst drauf kommen können :wink: