ObjetDataRow [Résolu]

salutyoussef 3 Messages postés mardi 11 novembre 2008Date d'inscription 28 mai 2009 Dernière intervention - 28 mai 2009 à 12:52 - Dernière réponse : Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention
- 28 mai 2009 à 14:22
Bonjour, j'ai un petit probleme pour faire une modification d'une ligne dans une base de données Access.
J'aimerais à partir d'un "numadherent" trouver la ligne dans la base de donnée qui la contient, par exemple
dans l'image ci dessous j'aimerais connaitre le numero de ligne dans la base qui contient l'utilisateur ayant pour "numadherent" 18 (à savoir la ligne 4) afin de le modifier.

http://www.hiboox.fr/go/images/adulte/access,0607128960c8b7dcb575c5a1be182ad9.jpg.html

Dans l'image ci-dessous on peut voir la ligne de code encadré en rouge qui me pose probleme.

http://www.hiboox.fr/go/images/jeu-video/code,39fa1fc76b071d5db388c2a3e203800f.jpg.html

Si je met "manuellement" le numero de l'utilisateur choisis (le 18 par exemple) comme ceci :

ObjetDataRow = ObjetDataSet.Tables("Adherent").Rows(18)

La modification à bien lieu.

Merci d'avance pour vos réponses :)
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
salutyoussef 3 Messages postés mardi 11 novembre 2008Date d'inscription 28 mai 2009 Dernière intervention - 28 mai 2009 à 12:55
3
Merci
Pardon les images sont mal passés.

Merci salutyoussef 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de salutyoussef
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 28 mai 2009 à 13:40
0
Merci
Bonjour,

Il suffit simplement d'afficher la liste de tes adhérants dans un combo comme ceci:

'Dans ton form Load

ComboBox1.DataSource = ObjetDataSet.Tables("Adherent")
ComboBox1.DisplayMember = "NumAdherent"

If ComboBox1.Items.Count > 0 Then _
   ComboBox1.SelectedIndex = 0
Else
   'MsgBox ("Pas de données dans la table")
   'Exit Sub
End if

Dans ton Button_Click

ObjetDataRow = (ObjetDataSet.Tables ("Adherent").Row (ComboBox1.SelectedIndex)
[...]

De cette façon tu aura un combo qui t'affichera le numéro d'édhérent que tu pourra sélectionner, en suite tu saisi les valeurs dans tes textbox, lors de la validation avec ton bouton la ligne choisie dans le combo sera modifié.

PS:

ObjetDataRow = ObjetDataSet.Tables("Adherent").Rows(18) <= ne fonctionne pas, 18 n'est pas le numéro d'adhérent mais le numéro de ligne de la table ce sera donc :
ObjetDataSet.Tables("Adherent").Rows(4)
 Et pour obtenir son numéro d'adhérent c'est
ObjetDataSet.Tables("Adherent").Rows(4)("NumAdherent")

@+ Mayzz.
Commenter la réponse de Mayzz
salutyoussef 3 Messages postés mardi 11 novembre 2008Date d'inscription 28 mai 2009 Dernière intervention - 28 mai 2009 à 13:50
0
Merci
Merci cela fonctionne,
J'aimerais aussi savoir si à partir du nom d'un adhérent on puisse retrouve son numéro de ligne dans la base de données Access ? (afin d'eviter de passer par la combo box)

Merci :)
Commenter la réponse de salutyoussef
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 28 mai 2009 à 14:22
0
Merci
Oui en incluant une requête sélect qui retourne une table, avec des Row, en fonction de ta requête

Exemple de requête:
 
SELECT * FROM Adherent WHERE nom = @Nom

cette requête te retournera une DataTable avec toutes les lignes dont le nom d'utilisateur est égale à la valeur de la variable @Nom
Commenter la réponse de Mayzz

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.