Ouvrir des form différents avec un bouton selon requete sql
pojick
Messages postés5Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention14 septembre 2004
-
22 déc. 2003 à 03:25
pojick
Messages postés5Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention14 septembre 2004
-
24 déc. 2003 à 02:19
bonjour
je travaille sur un projet de programme qui fait bibliotheque de divx, anime, jeux etc...
pour ce faire j'utilise une base de donnée (access) avec une seul table.
Mon probléme est tout bête (enfin je crois) : je ne sais pas
comment faire pour ouvrir des form différents avec un seul bouton selon ce que renvoit la base de donnée.
J'ai besoin de celà pour deux choses : le bouton modifier qui doit appeller la page ou on enregistre un fichier et qui est différente selon le type de fichier et sinon pour la consultation des fiches j'ai une liste ou l'on double clic pour ouvrir la fiche donc meme probleme : les fiches sont <> selon le fichier.
voici le code qui marche pour une seule form appelé (pour la fonction de modification)
Private Sub Bt_Modif_Click()
'Renvoie un message d'erreur si aucun film n'est selectionné
If CodeFilm <> 0 Then
nouv = False
Frm_New.Show
Me.Hide
Else
MsgBox "Selectionne un film !!", vbCritical, "Oublie"
End If
End Sub
maintenant je voudrais ajouter à celà la requete comme variable (ici style "film" mais y'en a 5 differents) :
requete "SELECT * FROM Film WHERE style'film'"
au lieu de juste lancé Frm_New.Show je lancerais Frm_New_film.Show ou Frm_New_anime.Show etc...
voilà j'espere avoir été clair! ... vous l'aurez compris je debute...
pojick
ps: une fois ce soucis réglé j'aurais fini mon prog!!!! donc j'ai vraiment besoin d'aide et envie d'apprendre (en sociologie le vb n'est pas monnaie courante, je n'ais que vous ;) )
A voir également:
Ouvrir des form différents avec un bouton selon requete sql
pojick
Messages postés5Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention14 septembre 2004 23 déc. 2003 à 04:08
et bien non .... ça ne marche pas, enfin pas tout a fait
il n'accepte pas de variable
Style = "film"
il ouvre ce qui renvoie a "film" donc le frm_film
si je modifie a la main Style = "anime" là il ouvre uniquement le frm renvoyant a l'anime meme pour un film par ex donc ça marche mais a moitié; j'ai essayé de bidouiller mais rien...donc maintenant il faut arriver a faire en sorte qu'il ouvre le bon frm AUTOMATIQUEMENT en lisant dans la BDD a l'endroit indiqué dan mon premier message
mais merci j'ai déjà résolue 50% du probleme! ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_PROGRAMMIX
Messages postés1133Date d'inscriptionmercredi 2 octobre 2002StatutMembreDernière intervention24 juillet 20112 23 déc. 2003 à 10:27
En formulant ma réponse, je n'avais pas fait attention à la manière dont tu avais rédigé ton code.
Tu as mis "If CodeFilm <> 0", ce qui implique que tu utilises un nombre et non une chaîne.
Donc, ma proposition devrait être réécrite de la manière suivante :
Select Case CodeFilm
Case 0
nouv = False
Frm_New_Film.Show
Case 1
Frm_New_Anime.Show
Case Else
(...)
End Select
Me.Hide
Else
MsgBox "Selectionne un film !!", vbCritical, "Oublie"
End If
MAIS ATTENTION, il est préférable d'initialiser ta variable avant la requête afin d'être certain que si CodeFilm vaut 0, c'est parce que la requête a renvoyé cette valeur et non parce qu'aucune valeur n'a été renvoyée.
pojick
Messages postés5Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention14 septembre 2004 24 déc. 2003 à 02:19
je me suis mal expliqué surtout, je crois que j'ai pas fournit toutes les infis nécessaire.
je vais shématiser :
j'ai une listeview qui affiche chaque fichier (film anime etc...)
-on met un fichier en surbrillance
-clic sur le bouton modifier
- le codefilm correspond au numero attribuer a chaque fichier dans la BDD voilà pourquoi y'a le "If CodeFilm <> 0" sinon ça veut dire qu'on a pas mis un fichier de la listview en surbrillance mais le codefilm ne joue pas sur le reste du code, donc ça peut pas être la bonen variable pour ouvrir le bon frm, donc j'utilise bien une chaine et non un nombre.
la chaine ( cette chaine c'est la requete sql en gros) ça ne peut etre que ça je variable puisque c'est ça qui doit determiner quel frm ouvrir.
voilà j'espere avoir preciser les choses
en attendant je cherche de mon coté
merce programmix