Comment afficher ou accéder à un champ d'un enregistrement d'un tableau de BDGr

cs_zaki4 Messages postés 10 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 14 juin 2010 - 25 mai 2010 à 18:49
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 26 mai 2010 à 19:24
Bonjour,
J'ai crée une base de donnée et je l'ai remplis par les données et elle s'affiche avec l'objet DBGrid , le problème est que je veux afficher le contenu d'un champ d'un enregistrement d'un tableau d'une BD dans un TEXTBOX
(text1.text) ou le comparer avec ce dernier. Quelles sont les instructions qui me permettent de faire ça?
merci.

7 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mai 2010 à 18:56
Salut
Tout dépend comment les données arrivent dans la DBGrid :
Par un composant ADODC et par programme, avec une référence à ADODB et un RecordSet ?

ADODC : Il faudra extraire la donnée de la DBGrid --> Voir comment lire le texte contenu dans la colonne X et la ligne Y
ADODB : Il suffit de traiter le contenu du RecordSet issu de te requète

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_zaki4 Messages postés 10 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 14 juin 2010
25 mai 2010 à 19:21
Les données arrivent dans DBGrid par l'outil DATA
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mai 2010 à 20:22
L'outil Data ?
C'est quoi ?
Essaye de retrouver son type, parce que ça ne me dit rien
0
cs_zaki4 Messages postés 10 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 14 juin 2010
26 mai 2010 à 00:15
il se trouve à la barre d'outils !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
26 mai 2010 à 10:23
Ok, autant pour moi, ce composant n'était pas chargé.
Je viens d'essayer de tester, mais je n'arrive pas à me connecter. Pas grave.

Hélas, ce genre de vieillerie ne semble pas permettre le filtrage des données.
Perso, je n'ai pas l'aide associé à ce composant DBGrid.
Si ça fonctionne chez toi, tant mieux.

Pour associer une TextBox à un champ, il te suffit de déclarer ton composant Data dans la propriété DataSource de la TextBox + le nom du champ dans DataField
(voir les propriétés des la catégorie "Données" des propriétés de la TextBox (quand tu organises l'affichage des propriétés par catégorie)

Je te conseille quand même de changer pour des composants plus ouverts et plus modernes, comme ADO.
Deux solutions :

- ADODC qui est un composant qui ressemble à Data, et auquel tu pourras associer une DBGrid ou autre TextBox.
ADODC a une propriété RecordSource qui te permettra de saisir un nom de champ ou une requète SQL

- ADODB n'est qu'une référence. Cela veut dire que ce sera à toi d'écrire toutes le paramétrage de la connexion et d'utiliser des RecordSet pour aller chercher tes infos. Un RecordSet n'a pas de présentation visuelle, ce sera, là aussi, à toi d'aller extraire chaque ligne de donnée et repiquer les champs pour les afficher dans tel ou tel composant.
Plus complexe, mais tellement plus flexible.

Des exemples existent parmi les codes : recherche ADODB

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_zaki4 Messages postés 10 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 14 juin 2010
26 mai 2010 à 17:16
la solution permet d'afficher le champs de tout les enregistrement et moi je veux celle d'un seul enregistrement et de la comparer avec le contenu d'un TextBox.
merci
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
26 mai 2010 à 19:24
Bon, j'ai remonté une vieille DB au format 97 sinon le vieux composant Data ne sait pas gérer.
Une fois les données affichées, pour isoler la donnée d'une des cases, il te suffit de faire :
    DBGrid1.Col =  6
    DBGrid1.Row = 1
    MsgBox "Contenu Col.6 Row.1 = """ & DBGrid1.Text & """"

Attention :
Les Col et Row sont numérotés de 0 à X, donc Row = 1 désigne la deuxième ligne

A toi de voir comment choisir la bonne "cellule" pour faire ta comparaison.
0
Rejoignez-nous