pointdalattitude
Messages postés67Date d'inscriptiondimanche 5 novembre 2000StatutMembreDernière intervention 3 mai 2005
-
15 mars 2005 à 14:57
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 2006
-
15 mars 2005 à 17:51
bonjour, j ai un petit problème mon projet marche très bien en simulation mais dès que je crée l'éxécutable alors j aii une erreur qui apparait
erreur d'éxécution'-2147417848(80010108)':
la méthode '~' le l'objet'~' a échoué
mon code est celui ci
Dim db As Database
Dim sEtatLoc As String
Private Sub Form_Load()
'Déclaration des variables
Dim DataBaseFile As String
Dim RstQuery As Recordset
Dim strsql As String
'Chemin de la base de données
DataBaseFile = App.Path & "\gestion.mdb"
'On attribue une référence à la variable DB
Set db = OpenDatabase(DataBaseFile)
'on efface le contenu de la listindisponible
ListIndisponible.Clear
'on veut chercher les films non disponibles donc on met
'l'état de location à "non"
sEtatLoc = "non"
strsql = ""
'Requête SQL: on cherche tous les films qui ne sont pas disponibles dans la bbd dvd
strsql = "SELECT [Titre du film] FROM dvd" strsql strsql & " WHERE disponible '" & sEtatLoc & "'"
Set RstQuery = db.OpenRecordset(strsql)
If Not (RstQuery.BOF And RstQuery.EOF) Then
Do While Not RstQuery.EOF
'On affiche les noms des titres de films dans ListIndisponible
ListIndisponible.AddItem RstQuery.Fields("[Titre du film]").Value
RstQuery.MoveNext
Loop
End If
'si la liste est égale à o alors on désactive cmdSuiviInfo
If (ListIndisponible.ListCount > 0) Then
cmdSuiviInfo.Enabled = True
Else
cmdSuiviInfo.Enabled = False
MsgBox "Tous les dvd sont disponibles", vbInformation, "Information"
End If
End Sub
Private Sub cmdSuiviInfo_Click()
' On efface le contenu des labels
lblRnom.Caption = ""
lblRprenom.Caption = ""
lblRtelephone.Caption = ""
lblRville.Caption = ""
lblRcodepost.Caption = ""
lblRAdr.Caption = ""
' Requête SQL: on sélectionne les informations sur le client dansla bdd loueur
'où le nom du film emprunté est celui sélectionné dans listIndisponible
strsql = "SELECT Nom, Prenom, Telephone, Adresse, CodePostal, Ville FROM Loueur" strsql strsql & " WHERE TitreEmprunte '" & ListIndisponible.Text & "'"
Set RstQuery = db.OpenRecordset(strsql)
If Not (RstQuery.BOF And RstQuery.EOF) Then
Do While Not RstQuery.EOF
'On affiche les données sur le client sélectionné dans les différents labels
lblRnom.Caption = RstQuery.Fields("Nom").Value
lblRprenom.Caption = RstQuery.Fields("Prenom").Value
lblRtelephone.Caption = RstQuery.Fields("Telephone").Value
lblRville.Caption = RstQuery.Fields("Ville").Value
lblRcodepost.Caption = RstQuery.Fields("CodePostal").Value
lblRAdr.Caption = RstQuery.Fields("Adresse").Value
RstQuery.MoveNext
Loop
End If
End Sub
Private Sub cmdSuiviRetour_Click()
Unload Me
Load frmAccueil
frmAccueil.Show
End Sub
l'erreur est dans la requête sql mais je ne sais pas où!!!! Merci beaucoup pour votre aide
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 15 mars 2005 à 17:51
oooDieu < Car son nom de champ contient des espaces... et si l'erreur venait de la, cela planterait en mode design
Est-ce que l'erreur apparait sur n'importe quelle machine ? As-tu bien empaqueter ton appli avant de l'isntaller sur un autre poste ? A quel moment du code se produit l'erreur ? Dans le load de la form, sur l'appui d'un bouton (si oui lequel ?) Je te propose une fois ces investigation faite de rajouter des ligne de trace (des Msgbox "Execution de la ligne bla bla bla ...") devrait suffire, dans l'EVT concerné par l'erreur au niveau de toute les ligne qui crée un objet : entre autre toutes tes lignes avec un "Set machin = Bidule", cart ton msg vient du fait que Windows ne peut pas créer un objet donné. Reste à savoir lequel pour trouver quelle DLL ou quel OCX est en cause.