problème de base de BDD. [ visual Basic ] - Programmation
Marsh Posté le 02-01-2002 à 22:35:17
bon on va commencer par le debut, elle est definit ta variable klk part?
Marsh Posté le 03-01-2002 à 11:53:57
a priori, ton bout de code est dans le form load d une feuille
et donc l objet n existe pas encore
alors que dans le activate il est deja cree
Marsh Posté le 03-01-2002 à 12:33:43
en fait c'est un objet que j'ai créé avec l'interface, mais je ne sait pas trop comment faire pour définir ou déclaré l'objet partout afint qu'il soit accessible de n'importe où. Je débute en vb, alors si y en a qui s'y connaisse mieuw que moa!!!
Marsh Posté le 03-01-2002 à 12:53:31
Ton objet est reconnu de partout, tu n as pas besoin de declarer quoi que ce soit
Simplement, il est cree pendant le form load de la feuille dans lequel tu l as mis et donc inaccessible avant
Ensuite, tant que ta feuille existe, tu peux acceder a l objet n importe ou dans ton code
Marsh Posté le 03-01-2002 à 13:27:18
ca depend, si c'est pas dans le code de ta feuille alors (dans un module ou autre) tu doit faire preceder ton Data2.Recordset.MoveFirst par le nom de ton form
nomduform.Data2.Recordset.MoveFirst
Marsh Posté le 03-01-2002 à 14:24:09
moi je pense savoir pk
tu as du oublier de fermer un "if" ou un "with"
balance tout le code de ta procédure pour voir
Marsh Posté le 03-01-2002 à 18:42:41
[citation][nom]dinbougre888 a écrit[/nom]moi je pense savoir pk
tu as du oublier de fermer un "if" ou un "with"
balance tout le code de ta procédure pour voir
[/citation
Private Sub opt_norm_Click()
'c est ici que ca bug
Data2.Recordset.MoveFirst
txt_adult.Text = 5
txt_etu.Text = 4
txt_ado.Text = 3
txt_enf.Text = 0
txt_etu.Enabled = True
End Sub
Private Sub opt_gp_Click()
'ici ca marche
Data2.Recordset.MoveFirst
While Not Data2.Recordset.EOF
If Data2.Recordset.Fields("TYPE" ) = "groupe" Then
If Data2.Recordset.Fields("CATEGORIE" ) = "adulte" Then
txt_adult.Text = Data2.Recordset.Fields("PRIX" )
ElseIf Data2.Recordset.Fields("CATEGORIE" ) = "enfant" Then
txt_enf.Text = Data2.Recordset.Fields("PRIX" )
ElseIf Data2.Recordset.Fields("CATEGORIE" ) = "etudiant" Then
txt_etu.Text = Data2.Recordset.Fields("PRIX" )
Else
'c est 1 ado
txt_ado.Text = Data2.Recordset.Fields("PRIX" )
End If
End If
Data2.Recordset.MoveNext
Wend
txt_etu.Enabled = True
End Sub
Marsh Posté le 03-01-2002 à 20:05:54
ca te dit quoi quand après l'erreur tu clique sur debugger et que tu met ta souris sur le code surligné en jaune ?
s'il y a bien sur
Marsh Posté le 03-01-2002 à 20:24:13
J'ai un autre problème :
%%%%%%%%%%%%%%%%%%%%%%%
quand j'utilise ce bout de prog :
Data2.Recordset.MoveFirst
While Not Data2.Recordset.EOF
If Data2.Recordset.Fields("TYPE" ) = "normal" Then
If Data2.Recordset.Fields("CATEGORIE" ) = "adulte" Then
txt_adult.Text = Data2.Recordset.Fields("PRIX" )
ElseIf Data2.Recordset.Fields("CATEGORIE" ) = "enfant" Then
txt_enf.Text = Data2.Recordset.Fields("PRIX" )
ElseIf Data2.Recordset.Fields("CATEGORIE" ) = "etudiant" Then
txt_etu.Text = Data2.Recordset.Fields("PRIX" )
Else
'c est 1 ado
txt_ado.Text = Data2.Recordset.Fields("PRIX" )
End If
End If
Data2.Recordset.MoveNext
Wend
qui affiche la ou il faut des données de la bdd, il marche 1 fois. Mais quand je le solicite une deuxième fois un message brutal apparait :
"cette methode a été anulée par un objet associé"
??? Vive VB !!! (lol)
Marsh Posté le 03-01-2002 à 20:26:09
Liquid a écrit a écrit : ca te dit quoi quand après l'erreur tu clique sur debugger et que tu met ta souris sur le code surligné en jaune ? s'il y a bien sur |
rien du tout
Marsh Posté le 02-01-2002 à 18:21:02
J'ai un problème avec un objet data
lorsque j'effectue l'instruction :
Data2.Recordset.MoveFirst un message d'erreur apparait : "var objet ou var bloc with non definie "
cependant quand la même instruction est executée ds la fonction
Private Sub Form_Activate() la ca marche
qq'1 peut il m'expliquer le pb
merci!