Newsgroup: it.comp.appl.access
Titolo: Errore A97 solo su alcune macchine

Salve a tutto il NG. Spero che qualcuno mi aiuti a risolvere un fastidioso
problema.
in un database di Access 97 ho una form con il seguente codice:
Private Sub Form_Load()
    LoadQuestion
End Sub
' execute the query at the source of the form, fill the question label,
' randomize the answers, and store the correct one in a module-level
variable
Private Sub LoadQuestion()
    Dim op(1 To 3) As String ' , op2 As String, op3 As String
    Dim randomArr(0 To 3) As String
    Dim i As Integer, rc As Long
    ' clear all the labels
    lblText.Caption = ""
    lbl1.Caption = ""
    lbl2.Caption = ""
    lbl3.Caption = ""
    lbl4.Caption = ""
    ' initialize the system randomizer, in order to randomly
    ' execute the query
    Randomize
    ' load the recordset from the query
    Me.Recordset.Requery
    Me.Recordset.MoveFirst
    (... il codice continua...)
Il problema è che appena il codice arriva alla riga Me.Recordset.Requery si
blocca e appare l'errore "Impossibile trovare il metodo o il membro dei
dati". Sembra che l'oggetto Recordset non faccia parte dell'insieme delle
proprietà dell'oggetto Me.
La cosa strana però è che questo db si blocca su alcuni pc, mentre su altri
gira normalmente, e io non sono riuscito a capire da cosa dipende. Perfino i
sistemi operativi sono diversi, ma gira e si blocca indifferentemente su
Win98se e su WinXP.
Nella finestra Riferimenti ci sono le seguenti righe:
Visual Basic for Application
Microsoft Access 9.0 Object Library
OLE Automation
Microsoft ActiveX Data Objects 2.1 Library
Microsoft Visual Basic for Application Extensibility 5.3
Naturalmente mi sono accertato che i riferimenti siano gli stessi anche
sulle macchine dove il db si blocca, ma sembra che questa impostazione sia
ininfluente.
Devo dare questo file a una persona sulla cui macchina non gira, e non
riesco a venirne a capo. Nemmeno su Google ho trovato qualcosa di utile.
Come si fa a far riconoscere ad Access l'oggetto Me.Recordset? Dovrebbe
dipendere da DAO, ma allora perché su altre macchine gira?
Chi mi può aiutare?
Grazie per l'attenzione.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Grazie per l'attenzione.
Magari in alcuni computer usi Access 97 per il quale il riferimento alla
libreria DAO è di default.
-- 
Roberto
-----------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
-----------------------------------------------

 ha
scritto:

Grazie per la risposta. Oggi avevo fatto diversi tentativi, tra cui
l'aggiunta del riferimento a DAO 3.6. Domani riprovo facendo attenzione alla
posizione.
Stamattina ho fatto quattro tentativi su quattro macchine WinXP con
Office97, e si è bloccato su tutte e quattro. Invece ieri avevo tentato su
altre due macchine, una con W98se/Office2000 e l'altra Win2003/Office2003, e
aveva funzionato su entrambe.
Il mdb nasce in versione A2000 e salvato alla versione precedente. Non è
possibile che questo passaggio abbia fatto casino con qualche setting, che
viene bypassato da qualche pc e si inchioda su qualche altro pc?
Comunque domani faccio il tentativo. Grazie per il momento, domani ti dico
com'è andata.




Ciao Roberto. Purtroppo non ha funzionato.
Ho impostato il riferimento alla libreria DAO 3.6 ed ho spostato in alto la
priorità ma continua a non aprire la form e a dare il medesimo errore.
Ho provato a cercare su Google e su Microsoft.com ma non ho trovato niente.
A proposito, come si dice in inglese "Impossibile trovare il metodo o il
membro dei dati?" cioè voglio dire quale è il testo inglese di questo
messaggio di errore? Purtroppo non è un errore intercettabile da VBA e non
ha un Err.Number. Vorrei cercare su Google in tutto il mondo il messaggio di
errore insieme a "Me.Recordset" e "Access 97". In italiano ho trovato molto
poco, ma magari in inglese trovo qualcosa.
Se hai qualche altra idea, io aspetto fiduciosamente tue notizie.
