Je suis devant un petit probl=E8me dont je n'arrive pas =E0 trouver la
solution.
J'explique le contexte.
J'ai une table qui doit servir =E0 g=E9rer les =E9quipes de travail
comprenant :
N=B0enr ; NomChefEquip ; N=B01_Empl ; N=B02_Empl ; ... ; N=B08_Empl ;
DateDeb ; DateFin
Dans le but de pouvoir calculer le temps pass=E9 par chantiers
effectu=E9s pendant la p=E9riode de composition de l'=E9quipe il me serait
n=E9cessaire de compter la composition de l'=E9quipe durant la p=E9riode.
D'autre part, je connais quel chantier a =E9t=E9 effectu=E9 par quel Chef
d'=E9quipe enregistr=E9 dans une autre table.
Mon soucis est comment puis-je compter les champs N=B01_Empl =E0
N=B08_Empl non vide ce qui me donnerait le nombre d'=E9quipiers pour la
p=E9riode donn=E9e.
La fonction compte() calcule sur la colonne d'un champ. Pour moi il
s'agit d'obtenir un champ calcul=E9 par enregistrement me donnant le
nbre d'=E9quipiers. L=E0, je s=E8che lamentablement ;+)
Je suis s=FBr que les pro que vous =EAtes, pourrez me trouver la
solution.
Merci encore pour tout ce que vous faites pour nous autres les bleus.
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel a écrit dans le message de news:
Bonjour à tous,
Je suis devant un petit problème dont je n'arrive pas à trouver la solution. J'explique le contexte. J'ai une table qui doit servir à gérer les équipes de travail comprenant : N°enr ; NomChefEquip ; N°1_Empl ; N°2_Empl ; ... ; N°8_Empl ; DateDeb ; DateFin
Dans le but de pouvoir calculer le temps passé par chantiers effectués pendant la période de composition de l'équipe il me serait nécessaire de compter la composition de l'équipe durant la période.
D'autre part, je connais quel chantier a été effectué par quel Chef d'équipe enregistré dans une autre table.
Mon soucis est comment puis-je compter les champs N°1_Empl à N°8_Empl non vide ce qui me donnerait le nombre d'équipiers pour la période donnée.
La fonction compte() calcule sur la colonne d'un champ. Pour moi il s'agit d'obtenir un champ calculé par enregistrement me donnant le nbre d'équipiers. Là, je sèche lamentablement ;+)
Je suis sûr que les pro que vous êtes, pourrez me trouver la solution.
Merci encore pour tout ce que vous faites pour nous autres les bleus.
Cordialement
Jean
Bonjour
essaie
Sub nbEmp
dim rst as recordset
set rst=currentdb.openrecordset("nomDeTaTable")
chef=inputbox("nom du chef d'equipe")
rst.findfirst "nomChefEquip='" & chef & "'"
for n=1 to 8
if not isnull(rst("n°" & n &"_empl")) then
nb=nb+1
endif
next
msgbox nb & " equipier(s)"
set rst=nothing
end sub
Michel
<levallo@free.fr> a écrit dans le message de news:
1156314234.194962.66950@i3g2000cwc.googlegroups.com...
Bonjour à tous,
Je suis devant un petit problème dont je n'arrive pas à trouver la
solution.
J'explique le contexte.
J'ai une table qui doit servir à gérer les équipes de travail
comprenant :
N°enr ; NomChefEquip ; N°1_Empl ; N°2_Empl ; ... ; N°8_Empl ;
DateDeb ; DateFin
Dans le but de pouvoir calculer le temps passé par chantiers
effectués pendant la période de composition de l'équipe il me serait
nécessaire de compter la composition de l'équipe durant la période.
D'autre part, je connais quel chantier a été effectué par quel Chef
d'équipe enregistré dans une autre table.
Mon soucis est comment puis-je compter les champs N°1_Empl à
N°8_Empl non vide ce qui me donnerait le nombre d'équipiers pour la
période donnée.
La fonction compte() calcule sur la colonne d'un champ. Pour moi il
s'agit d'obtenir un champ calculé par enregistrement me donnant le
nbre d'équipiers. Là, je sèche lamentablement ;+)
Je suis sûr que les pro que vous êtes, pourrez me trouver la
solution.
Merci encore pour tout ce que vous faites pour nous autres les bleus.
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel a écrit dans le message de news:
Bonjour à tous,
Je suis devant un petit problème dont je n'arrive pas à trouver la solution. J'explique le contexte. J'ai une table qui doit servir à gérer les équipes de travail comprenant : N°enr ; NomChefEquip ; N°1_Empl ; N°2_Empl ; ... ; N°8_Empl ; DateDeb ; DateFin
Dans le but de pouvoir calculer le temps passé par chantiers effectués pendant la période de composition de l'équipe il me serait nécessaire de compter la composition de l'équipe durant la période.
D'autre part, je connais quel chantier a été effectué par quel Chef d'équipe enregistré dans une autre table.
Mon soucis est comment puis-je compter les champs N°1_Empl à N°8_Empl non vide ce qui me donnerait le nombre d'équipiers pour la période donnée.
La fonction compte() calcule sur la colonne d'un champ. Pour moi il s'agit d'obtenir un champ calculé par enregistrement me donnant le nbre d'équipiers. Là, je sèche lamentablement ;+)
Je suis sûr que les pro que vous êtes, pourrez me trouver la solution.
Merci encore pour tout ce que vous faites pour nous autres les bleus.
Cordialement
Jean
JL
michel wrote:
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis. Ce Sub nbEmp doit être modifié comment pour être integré et faire apparaitre dans la requète un champ NbreEquipiers ?
Cordialement
Jean
michel wrote:
Bonjour
essaie
Sub nbEmp
dim rst as recordset
set rst=currentdb.openrecordset("nomDeTaTable")
chef=inputbox("nom du chef d'equipe")
rst.findfirst "nomChefEquip='" & chef & "'"
for n=1 to 8
if not isnull(rst("n°" & n &"_empl")) then
nb=nb+1
endif
next
msgbox nb & " equipier(s)"
set rst=nothing
end sub
Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis.
Ce Sub nbEmp doit être modifié comment pour être integré et faire
apparaitre dans la requète un champ NbreEquipiers ?
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis. Ce Sub nbEmp doit être modifié comment pour être integré et faire apparaitre dans la requète un champ NbreEquipiers ?
Cordialement
Jean
michel
Pour etre utilisable dans une requete il faut une procedure function et non Sub function nbEmp(chef) dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next nbEmp=nb set rst=nothing end function
ensuite dans ta requete tu ajoute un champ nombre:nbemp("NomDuchef") Voila Michel "JL" a écrit dans le message de news: 44ec54fa$0$25984$
michel wrote:
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis. Ce Sub nbEmp doit être modifié comment pour être integré et faire apparaitre dans la requète un champ NbreEquipiers ?
Cordialement
Jean
Pour etre utilisable dans une requete il faut une procedure function et non
Sub
function nbEmp(chef)
dim rst as recordset
set rst=currentdb.openrecordset("nomDeTaTable")
rst.findfirst "nomChefEquip='" & chef & "'"
for n=1 to 8
if not isnull(rst("n°" & n &"_empl")) then
nb=nb+1
endif
next
nbEmp=nb
set rst=nothing
end function
ensuite dans ta requete tu ajoute un champ
nombre:nbemp("NomDuchef")
Voila
Michel
"JL" <levallo@free.fr> a écrit dans le message de news:
44ec54fa$0$25984$626a54ce@news.free.fr...
michel wrote:
Bonjour
essaie
Sub nbEmp
dim rst as recordset
set rst=currentdb.openrecordset("nomDeTaTable")
chef=inputbox("nom du chef d'equipe")
rst.findfirst "nomChefEquip='" & chef & "'"
for n=1 to 8
if not isnull(rst("n°" & n &"_empl")) then
nb=nb+1
endif
next
msgbox nb & " equipier(s)"
set rst=nothing
end sub
Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis.
Ce Sub nbEmp doit être modifié comment pour être integré et faire
apparaitre dans la requète un champ NbreEquipiers ?
Pour etre utilisable dans une requete il faut une procedure function et non Sub function nbEmp(chef) dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next nbEmp=nb set rst=nothing end function
ensuite dans ta requete tu ajoute un champ nombre:nbemp("NomDuchef") Voila Michel "JL" a écrit dans le message de news: 44ec54fa$0$25984$
michel wrote:
Bonjour essaie Sub nbEmp dim rst as recordset set rst=currentdb.openrecordset("nomDeTaTable") chef=inputbox("nom du chef d'equipe") rst.findfirst "nomChefEquip='" & chef & "'" for n=1 to 8 if not isnull(rst("n°" & n &"_empl")) then nb=nb+1 endif next msgbox nb & " equipier(s)" set rst=nothing end sub Michel
Merci pour la réponse. Je suis de nouveau présent.
Une petite précision qui me semble nécessaire pour le novice que je suis. Ce Sub nbEmp doit être modifié comment pour être integré et faire apparaitre dans la requète un champ NbreEquipiers ?
Cordialement
Jean
levallo
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'" J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable") Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'" par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'"
J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable")
Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma
table
Et
rst.findfirst "nomChefEquip='" & chef & "'"
par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du
champ
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'" J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable") Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'" par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
michel
ChefEquipesNom est il bien un champ texte, si oui je pense a un probleme de reference tu ne m'indique pas le message d'erreur Serait ce "propriete ou methode non geree etc" Essaie Dans ton module ou tu as mis la fonction Alt F11 pour modifier Ensuite dans le menu References Cherche et coche Microsoft DAO 3.6 Library Ensuite decoche microsoft active x data objet 2.1 Tiens moi au courant Mais je ne pourrais pas acceder au forum avant demain Michel
a écrit dans le message de news:
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'" J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable") Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'" par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
ChefEquipesNom est il bien un champ texte, si oui je pense a un probleme de
reference tu ne m'indique pas le message d'erreur
Serait ce "propriete ou methode non geree etc"
Essaie
Dans ton module ou tu as mis la fonction
Alt F11 pour modifier
Ensuite dans le menu References
Cherche et coche Microsoft DAO 3.6 Library
Ensuite decoche microsoft active x data objet 2.1
Tiens moi au courant
Mais je ne pourrais pas acceder au forum avant demain
Michel
<levallo@free.fr> a écrit dans le message de news:
1156342779.730306.177990@p79g2000cwp.googlegroups.com...
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'"
J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable")
Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma
table
Et
rst.findfirst "nomChefEquip='" & chef & "'"
par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du
champ
ChefEquipesNom est il bien un champ texte, si oui je pense a un probleme de reference tu ne m'indique pas le message d'erreur Serait ce "propriete ou methode non geree etc" Essaie Dans ton module ou tu as mis la fonction Alt F11 pour modifier Ensuite dans le menu References Cherche et coche Microsoft DAO 3.6 Library Ensuite decoche microsoft active x data objet 2.1 Tiens moi au courant Mais je ne pourrais pas acceder au forum avant demain Michel
a écrit dans le message de news:
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'" J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable") Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'" par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
Eric
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' je instantané
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'"
J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable")
Par : set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'"
par : rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find
(FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce
qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour
contourner le problème, déclares comme suit:
set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique
ou
set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' je instantané
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'"
J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable")
Par :
set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma
table
Et
rst.findfirst "nomChefEquip='" & chef & "'"
par :
rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du
champ
Quel est la raison du plantage de ma requète ?
A+
Jean
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' je instantané
Merci Michel pour ta réponse. Malheureusement ma function plante sur
rst.findfirst "nomChefEquip='" & chef & "'"
J'ai corrigé
set rst=currentdb.openrecordset("nomDeTaTable")
Par : set rst=currentdb.openrecordset("tbEquipes") ' qui est le nom de ma table Et
rst.findfirst "nomChefEquip='" & chef & "'"
par : rst.FindFirst "ChefEquipesNom='" & chef & "'" ' qui le vrai nom du champ
Quel est la raison du plantage de ma requète ?
A+
Jean
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
levallo
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find
(FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce
qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour
contourner le problème, déclares comme suit:
set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique
ou
set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric,
mais je plante toujours au même endroit.
J'ai essayé les Trois solutions. Voici la function telle qu'elle est
actuellement
Function nbEmp(chef)
Dim rst As Recordset
' Set rst = CurrentDb.OpenRecordset("tbEquipes")
' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
rst.FindFirst "ChefEquipesNom='" & chef & "'"
For N = 1 To 8
If Not IsNull(rst("n°" & N & "_empl")) Then
nb = nb + 1
End If
Next
nbEmp = nb
Set rst = Nothing
End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché
Microsoft DAO 3.6 Library. Il était coché.
Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données
introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
levallo
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find
(FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce
qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour
contourner le problème, déclares comme suit:
set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique
ou
set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric,
mais je plante toujours au même endroit.
J'ai essayé les Trois solutions. Voici la function telle qu'elle est
actuellement
Function nbEmp(chef)
Dim rst As Recordset
' Set rst = CurrentDb.OpenRecordset("tbEquipes")
' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
rst.FindFirst "ChefEquipesNom='" & chef & "'"
For N = 1 To 8
If Not IsNull(rst("n°" & N & "_empl")) Then
nb = nb + 1
End If
Next
nbEmp = nb
Set rst = Nothing
End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché
Microsoft DAO 3.6 Library. Il était coché.
Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données
introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynam ique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu inst antané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
jt
a écrit dans le message de news:
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean Bonjour Peux tu preciser le message d erreur A+
<levallo@free.fr> a écrit dans le message de news:
1156352625.094348.305660@p79g2000cwp.googlegroups.com...
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find
(FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce
qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour
contourner le problème, déclares comme suit:
set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
ou
set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
Merci Eric,
mais je plante toujours au même endroit.
J'ai essayé les Trois solutions. Voici la function telle qu'elle est
actuellement
Function nbEmp(chef)
Dim rst As Recordset
' Set rst = CurrentDb.OpenRecordset("tbEquipes")
' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
rst.FindFirst "ChefEquipesNom='" & chef & "'"
For N = 1 To 8
If Not IsNull(rst("n°" & N & "_empl")) Then
nb = nb + 1
End If
Next
nbEmp = nb
Set rst = Nothing
End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché
Microsoft DAO 3.6 Library. Il était coché.
Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données
introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
Bonjour
Peux tu preciser le message d erreur
A+
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean Bonjour Peux tu preciser le message d erreur A+
jt
"jt" a écrit dans le message de news:
a écrit dans le message de news:
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean Bonjour Peux tu preciser le message d erreur A+
Je n avais pas bien lu
Il me semble que le probleme vient plutot de la ligne
If Not IsNull(rst("n°" & N & "_empl")) Then Il faut il me semble les enumerer un par un et non dans une boucle avec une
variable
"jt" <jt@nospam.fr> a écrit dans le message de news:
ughWLgtxGHA.4204@TK2MSFTNGP04.phx.gbl...
<levallo@free.fr> a écrit dans le message de news:
1156352625.094348.305660@p79g2000cwp.googlegroups.com...
Bonjour,
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find
(FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce
qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour
contourner le problème, déclares comme suit:
set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
ou
set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
Merci Eric,
mais je plante toujours au même endroit.
J'ai essayé les Trois solutions. Voici la function telle qu'elle est
actuellement
Function nbEmp(chef)
Dim rst As Recordset
' Set rst = CurrentDb.OpenRecordset("tbEquipes")
' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu
dynamique
Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu
instantané
rst.FindFirst "ChefEquipesNom='" & chef & "'"
For N = 1 To 8
If Not IsNull(rst("n°" & N & "_empl")) Then
nb = nb + 1
End If
Next
nbEmp = nb
Set rst = Nothing
End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché
Microsoft DAO 3.6 Library. Il était coché.
Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données
introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean
Bonjour
Peux tu preciser le message d erreur
A+
Je n avais pas bien lu
Il me semble que le probleme vient plutot de la ligne
If Not IsNull(rst("n°" & N & "_empl")) Then
Il faut il me semble les enumerer un par un et non dans une boucle avec une
Si je ne me trompe pas, tu ne peux pas invoquer de méthode Find (FindFirst, FindNext,...) sur un jeu d'enregistrements de type Table, ce qui est ton cas d'après ta déclaration d'ouverture du Recordset. Pour contourner le problème, déclares comme suit: set rst=currentdb.openrecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique ou set rst=currentdb.openrecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané
Merci Eric, mais je plante toujours au même endroit. J'ai essayé les Trois solutions. Voici la function telle qu'elle est actuellement
Function nbEmp(chef) Dim rst As Recordset ' Set rst = CurrentDb.OpenRecordset("tbEquipes") ' Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenDynaset) ' jeu dynamique Set rst = CurrentDb.OpenRecordset("tbEquipes", dbOpenSnapshot) ' jeu instantané rst.FindFirst "ChefEquipesNom='" & chef & "'" For N = 1 To 8 If Not IsNull(rst("n°" & N & "_empl")) Then nb = nb + 1 End If Next nbEmp = nb Set rst = Nothing End Function
Pour répondre à Michel, j'ai vérifié que j'avais bien coché Microsoft DAO 3.6 Library. Il était coché. Ensuite j'ai décoché microsoft activeX data objet 2.8
Le message d'erreur était et reste Membre de méthode ou de données introuvables.
Cela n'a rien changé.
La table comporte le champ ChefEquipesNom format texte
A+
Jean Bonjour Peux tu preciser le message d erreur A+
Je n avais pas bien lu
Il me semble que le probleme vient plutot de la ligne
If Not IsNull(rst("n°" & N & "_empl")) Then Il faut il me semble les enumerer un par un et non dans une boucle avec une