Message d'erreur du type "Un objet est requis"

xav0021 Messages postés 44 Date d'inscription jeudi 11 mars 2004 Statut Membre Dernière intervention 23 janvier 2007 - 19 mai 2004 à 10:02
HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 - 19 mai 2004 à 10:19
Lors de la compilation le message suivant apparaît:
" Un objet est requis". Voici mon code: (en rouge la ligne désignée lors de l'erreur)

Public Function InitConnection(DSN As String, UserName As String, PassWord As String) As Boolean

'Déclarations des fonctions
Dim query As String
Dim cnxString As String
Dim RequeteOk As Boolean
Dim intRéponse As Integer
Dim lngStyle As Long
Dim rsADO As New ADODB.Recordset
Dim cnnADO As New ADODB.Connection
Dim cmdADO As New ADODB.Command
InitConnection = False

'Initialisation de la chaine de connexion
cnnADO.ConnectionString = "DSN=GTI;"

'Vérifie que la connexion est bien fermée
If cnnADO.State = adStateOpen Then
cnnADO.Close
End If

'Connexion à la base de données
cnnADO.Open cnxString, GTI, GTI, adAsyncConnect

'Attente que la connexion soit établie
While (cnnADO.State = adStateConnecting)
DoEvents
Wend

'Vérification des erreurs dans le cas d'une mauvaise connexion
If cnnADO.Errors.Count > 0 Then
'Affichage des erreurs
MsgBox cnnADO.Errors.Item(0)
InitConnection = False
Exit Function
Else
InitConnection = True
lngStyle = vbOKOnly + vbInformation
intRéponse = MsgBox("Connection réussie !! ", lngStyle, "Résultat connexion:")

End If

'Configure la commande
cmdADO.ActiveConnection = cnnADO
cmdADO.CommandText = "SELECT ANKTSOC FROM CANAL "

'Configurer le recordset
rsADO.CursorLocation = adUseClient
rsADO.CursorType = adOpenDynamic
rsADO.LockType = adLockPessimistic
rsADO.Open cmdADO

'Lire le premier enregistrement
ReadRecord


End Function

Public Sub Form_Load()

Call InitConnection("GTI", "GTI", "GTI")

End Sub

Public Sub ReadRecord()

txtAffichage.Text = GetValue(rsADO!ANKTSOC)


End Sub

Public Function GetValue(fld As Field) As String

If IsNull(fld) Then
GetValue = ""
Else
GetValue = fld
End If

End Function

Quelqu'un a-t-il une idée.?
Merci

2 réponses

HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 20
19 mai 2004 à 10:18
Bonjour,

Essayes avec :
txtAffichage.Text = rsADO.Fields("ANKTSOC").Value

Fanny
0
HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 20
19 mai 2004 à 10:19
Oups, je retire ce que j'ai dit ... désolée :sad) ,

mais tu n'as pas déclaré dans ta fonction tes variables en plublic, donc la procédure ReadRecord ne connait pas rsADO ...

Fanny
0
Rejoignez-nous