Oppure

Loading
18/11/10 16:12
Iohoilpotere
Oggi sono alle prese con le variabili globali che, se spostate da un progetto all'altro, ritornano l'errore di runtime 91: variabile di oggetto o variabile del blocco with non impostata. Ho cercato su google questo errore ma non ho ottenuto altro che scoprire che è un errore comune e che si trova un po ovunque. Dunque, posto il codice ma sarebbe superfluo in quanto lo stesso IDENTICO codice, su un altro progetto (con gli stessi identici moduli) funziona.

Function Get_OK(ByVal BD As String) As String
Dim rs1, rs2 As Recordset
Dim ssql, msg  As String

msg = ""
ssql = "Select QRY, WARNING from TZ_CONTROLS where " & BD & " = true"
Set rs1 = DB.OpenRecordset(ssql)
While Not rs1.EOF
    ssql = "select count(*) as Cnt from " & rs1("QRY")
    Set rs2 = DB.OpenRecordset(ssql)
    If CInt(rs2("Cnt")) > 0 Then
        msg = msg & rs2("Cnt") & " Record " & rs1("Warning") & vbCrLf
    End If
    rs2.Close
    rs1.MoveNext
Wend
Get_OK = msg

End Function


Il problema si verifica su:

Set rs1 = DB.OpenRecordset(ssql)

La variabile DB di tipo database viene dichiarata in un modulo così:

Global DB As Database


e successivamente, durante l'esecuzione del codice:

Set DB = CurrentDb


Tutto questo in moduli VB in Access.

Qualcuno saprebbe darmi una mano?
aaa