Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner le
N° (ou la position) d'un enregistrement dont le champ Truc
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner le
N° (ou la position) d'un enregistrement dont le champ Truc
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner le
N° (ou la position) d'un enregistrement dont le champ Truc
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
-----Message d'origine-----
Je suppose qu'on parle de recordset?
dans ce cas, il faut faire un Find sur le champ Truc.
Sinon, je ne comprends pas le contexte.
.
-----Message d'origine-----
Je suppose qu'on parle de recordset?
dans ce cas, il faut faire un Find sur le champ Truc.
Sinon, je ne comprends pas le contexte.
.
-----Message d'origine-----
Je suppose qu'on parle de recordset?
dans ce cas, il faut faire un Find sur le champ Truc.
Sinon, je ne comprends pas le contexte.
.
-----Message d'origine-----
""
le message de news:115301c4d631$f4a8a0d0
Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
"jamillou@inapg.inra.fr"
le message de news:115301c4d631$f4a8a0d0
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
""
le message de news:115301c4d631$f4a8a0d0
Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
""
le message de news:115301c4d631$f4a8a0d0
Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
"jamillou@inapg.inra.fr"
le message de news:115301c4d631$f4a8a0d0
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
""
le message de news:115301c4d631$f4a8a0d0
Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
N° (ou la position) d'un enregistrement dont le champ
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
la méthode Find sur le recordset (ce qui revient à faire
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à faire
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique
-----Message d'origine-----
"jamillou@inapg.inra.fr"
<anonymous@discussions.microsoft.com> a écrit dans
le message de news:115301c4d631$f4a8a0d0
$a501280a@phx.gbl...
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner
le
N° (ou la position) d'un enregistrement dont le champ
Truc
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
base
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utise
la méthode Find sur le recordset (ce qui revient à faire
un
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à faire
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de cet
enregistrement ne s'affiche pas dans le formulaire lié à
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car dans
ma table la valeur du champ Truc n'est pas égale au N° de
l'enregistrement dans la table. En effet Truc peut avoir
pour valeur 25 et être le 20 ième enregistrement, s'il y a
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N° d'un
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement voulu
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
méthode Seek (beaucoup plus rapide):Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
wrote in message
news:9fea01c4d6b9$1d0be870$Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
ceque l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à faire
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de cet
enregistrement ne s'affiche pas dans le formulaire lié à
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car dans
ma table la valeur du champ Truc n'est pas égale au N° de
l'enregistrement dans la table. En effet Truc peut avoir
pour valeur 25 et être le 20 ième enregistrement, s'il y a
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N° d'un
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement voulu
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique
-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.
Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
méthode Seek (beaucoup plus rapide):
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)
RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
<anonymous@discussions.microsoft.com> wrote in message
news:9fea01c4d6b9$1d0be870$a401280a@phx.gbl...
Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique
-----Message d'origine-----
"jamillou@inapg.inra.fr"
<anonymous@discussions.microsoft.com> a écrit dans
le message de news:115301c4d631$f4a8a0d0
$a501280a@phx.gbl...
Bonjour,
Existerait-il une fonction prédéfinie en VB pour donner
le
N° (ou la position) d'un enregistrement dont le champ
Truc
a la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
ce
que l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
base
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utise
la méthode Find sur le recordset (ce qui revient à faire
un
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de cet
enregistrement ne s'affiche pas dans le formulaire lié à
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car dans
ma table la valeur du champ Truc n'est pas égale au N° de
l'enregistrement dans la table. En effet Truc peut avoir
pour valeur 25 et être le 20 ième enregistrement, s'il y a
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N° d'un
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement voulu
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser la
méthode Seek (beaucoup plus rapide):Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les Tables.
Voir aussi: FindPrevious, FindNext et FindLast dans l'aide
Pascal B.
"Véronique Jamilloux"
wrote in message
news:9fea01c4d6b9$1d0be870$Bonjour,
Merci de l'information, j'utilise des recordset DAO, donc
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour donner
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro automatique)
Je sais qu'on y arrive en faisant une boucle sur le jeu
d'enregistrements, on fait courrir un compteur jusqu'à
ceque l'on trouve celui dont le champ Truc à la valeur 5.
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à faire
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas d'une
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
-----Message d'origine-----
Bonjour,
Ce que tu cherches c'est la valeur de la clef primaire
N° auto ça sert à ça).
Donc regarde la méthode seek de l'objet recordset comme
Christophe
Véronique Jamilloux a écrit :Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de
enregistrement ne s'affiche pas dans le formulaire lié
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car
ma table la valeur du champ Truc n'est pas égale au N°
l'enregistrement dans la table. En effet Truc peut
pour valeur 25 et être le 20 ième enregistrement, s'il
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N°
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser
méthode Seek (beaucoup plus rapide):Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les
Voir aussi: FindPrevious, FindNext et FindLast dans
Pascal B.
"Véronique Jamilloux"
wrote in message
news:9fea01c4d6b9$1d0be870$Bonjour,
Merci de l'information, j'utilise des recordset DAO,
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro
Je sais qu'on y arrive en faisant une boucle sur le
d'enregistrements, on fait courrir un compteur
ceque l'on trouve celui dont le champ Truc à la valeur
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
.
-----Message d'origine-----
Bonjour,
Ce que tu cherches c'est la valeur de la clef primaire
N° auto ça sert à ça).
Donc regarde la méthode seek de l'objet recordset comme
Christophe
Véronique Jamilloux a écrit :
Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de
enregistrement ne s'affiche pas dans le formulaire lié
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car
ma table la valeur du champ Truc n'est pas égale au N°
l'enregistrement dans la table. En effet Truc peut
pour valeur 25 et être le 20 ième enregistrement, s'il
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N°
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique
-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.
Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser
méthode Seek (beaucoup plus rapide):
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)
RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les
Voir aussi: FindPrevious, FindNext et FindLast dans
Pascal B.
"Véronique Jamilloux"
<anonymous@discussions.microsoft.com> wrote in message
news:9fea01c4d6b9$1d0be870$a401280a@phx.gbl...
Bonjour,
Merci de l'information, j'utilise des recordset DAO,
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique
-----Message d'origine-----
"jamillou@inapg.inra.fr"
<anonymous@discussions.microsoft.com> a écrit dans
le message de news:115301c4d631$f4a8a0d0
$a501280a@phx.gbl...
Bonjour,
Existerait-il une fonction prédéfinie en VB pour
le
N° (ou la position) d'un enregistrement dont le champ
Truc
a la valeur 5? (Le champ Truc est un Numéro
Je sais qu'on y arrive en faisant une boucle sur le
d'enregistrements, on fait courrir un compteur
ce
que l'on trouve celui dont le champ Truc à la valeur
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
base
de données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utise
la méthode Find sur le recordset (ce qui revient à
un
WHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas
base,
préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
.
-----Message d'origine-----
Bonjour,
Ce que tu cherches c'est la valeur de la clef primaire
N° auto ça sert à ça).
Donc regarde la méthode seek de l'objet recordset comme
Christophe
Véronique Jamilloux a écrit :Effectivement le findRecordset pointe bien sur
l'enregistrement voulu de la table mais les valeur de
enregistrement ne s'affiche pas dans le formulaire lié
cette table.
En fait j'ai un formulaire lié au champs d'une table et
notament le champ Truc (de type N° auto). Dans ce
formulaire il y a un bouton "rechercher", une boite de
dialogue s'ouvre et tu donne ta valeur du champ Truc.
J'utilisais alors le méthode "docmd.GotoRecord" qui
demande un N° d'enregistrement. D'où mon problème car
ma table la valeur du champ Truc n'est pas égale au N°
l'enregistrement dans la table. En effet Truc peut
pour valeur 25 et être le 20 ième enregistrement, s'il
eu des suppressions d'enregistrement.
Voilà pourquoi je cherche le moyen de trouver le N°
enregistrement dont le champ Truc à une valeur précise.
L'avantage de la méthode "docmd.GotoRecord" est que le
pointeur de table se positionne sur l'enregistrement
et donc la valeur des champs est bien affichée par le
formulaire.
Je vais donc étudier le findFirst
Merci de ton aide
A+
Véronique-----Message d'origine-----
Bonjour Véro,
C'est surtout pas FindRecordset !
Mais plutot FindFirst pour trouver un enregistrement
précis.Exemple pour un Recordset de type Dynaset:
Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTableOuQuery")
RS.FindFirst "MonChamp=" & MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Pour un Recordset de type Table, on préférera utiliser
méthode Seek (beaucoup plus rapide):Dim RS as Recordset
Dim MaValeur as Integer
Set RS = DB.OpenRecordset("MaTable", dbOpenTable)
'Remarque: La PrimaryKey désigne le champs "MonChamp"
dans la définition de la table (voir Access)RS.Index = "PrimaryKey"
RS.Seek "=", MaValeur
If RS.NoMatch then
'... (pas trouvé)
Else
'... (trouvé)
End if
Note: La méthode FindFirst foctionne aussi sur les
Voir aussi: FindPrevious, FindNext et FindLast dans
Pascal B.
"Véronique Jamilloux"
wrote in message
news:9fea01c4d6b9$1d0be870$Bonjour,
Merci de l'information, j'utilise des recordset DAO,
je vais essayer la méthode doCmd.findRecordset.
Bonne fin de journée
Véronique-----Message d'origine-----
""
a écrit dansle message de news:115301c4d631$f4a8a0d0
$Bonjour,Existerait-il une fonction prédéfinie en VB pour
leN° (ou la position) d'un enregistrement dont le champ
Truca la valeur 5? (Le champ Truc est un Numéro
Je sais qu'on y arrive en faisant une boucle sur le
d'enregistrements, on fait courrir un compteur
ceque l'on trouve celui dont le champ Truc à la valeur
Par avance merci de l'info
Véro
Hello,
Dans un fichier séquentiel ou dans un recordset d'une
basede données?
Dans un fichier séquentiel, ca n'existe pas.
Dans une DB, bien sur ça existe:
on fait soit une clause Where dans la requête, soit on
utisela méthode Find sur le recordset (ce qui revient à
unWHERE, d'ailleurs).
Si tu peux préciser un tout petit peu (dans le cas
base,préciser DAO ou ADO ou autre) ?
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
.
.
.