Je n'arive pas a simplifié et de corrigé l'erreur dans ce code

Shendoo
Messages postés
55
Date d'inscription
vendredi 12 novembre 2004
Statut
Membre
Dernière intervention
1 juin 2007
- 28 sept. 2005 à 16:34
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
- 28 sept. 2005 à 23:25
Bonjour a vous tous , voilà mon pb je n'arive pas a simplifié et
de corrigé l'erreur dans ce code. Il me sert a ffiche ma fiche de DVD
qd je fait un dbclick sur un listview !!!!! là j'ai besoin d'une
aide rapide et précisse alors a vous de joué et merci pour l'aide
apporté ;)



CODE:



Public Function GetLigne(strTitre) As Long

Dim I As Integer

Dim cn As New Connection

Dim rs As New Recordset



cn.Provider = "Microsoft.Jet.OLEDB.4.0"

cn.ConnectionString = "Data Source=" & App.Path & "\DMSBOX.mdb;"

cn.Open userid:="Admin", Password:=""



A = "SELECT * "

A = A & " FROM DMS"

A = A & " Where"

A A & " Titre_du_film "

A = A & ("'") & FrmMain.ListeNom.Text & ("'")



rs.Open (A), cn



rs.MoveFirst

I = 0

Do While Not rs.EOF

If rs.Fields("Titre_du_Film") = strTitre_du_Film Then

GetLigne = I

Exit Do

Else




rs.MoveNext

I = I + 1

End If

Loop



rs.Close



End Function

a bientot sur ce forum :D

3 réponses

BasicInstinct
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
12
28 sept. 2005 à 17:11
je comprends pas ce que tu fais...
pour moi ton code doit planter sur rs.MoveFirst qd le titre du film n'existe pas, sinon ta fonction renvoie 0.

je me trompe ?? tu veux obtenir quoi exactement ?

BasicInstinct
0
PCPT
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
3 février 2018
50
28 sept. 2005 à 18:04
c'est quoi cette fonction qui ne retourne rien , qui demande un paramètre qu'elle n'utilise pas, et qui liste ses retours de requête qui ne doit logiquement renvoyer qu'un seul résultat......
0
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
4
28 sept. 2005 à 23:25
Salut,
Tu devrais plutot coder dans ce style et sans faire de Fonction tu colles le code dans l'évènement click ou plutôt doubleclick de ta liste.
Mieux vaut aussi déclarer ta connection dans un module

Dim Search As String
Screen.MousePointer = vbHourglass
'*** Là c'est pour éviter les éventuels plantages dans le cas ou le titre contient une apostrophe
Search = Replace(FrmMain.ListeNom.Text , "'", "''")
Set rs = New ADODB.Recordset
rs.Open "select * from DMS where Titre_du_film ='" & Search & "'", cn


'*** Et là pour éviter un plantage si le titre ou autre et vide
lblTitre.Caption = IIf(rsFilm!Titre_du_film <> "", rsFilm!Titre_du_film , "PasDeFilm")
...................
...................
...................
Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0