[execice pas facil du tout (pour moi)]

etudiante2007 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
 irem32 -
Bounjour,

Je suis une étudiante et j'ai un devoir qui me pose des problèmes, en fait je ne comprends pas tres bien le VBA et j'ai cet exercice qui me bloque depuis quelques heures:

Voici la fonction qui est sensée de me servir d'exemple:
retouner la taille moyenne des hommes adultes;

Private Function getTailleMoyHomAdulte() As Double
Dim rs-atient As DAO.Recordset
Dim requete As String
Dim nbPatient As Integer
Dim totTaille As Integer
'--- récupère dans un curseur tous les patients hommes adultes
requete = "select patient.numPatient, patient.taille from patient where patient.sexe = ‘H’ and patient.type = 1"
Set rsPatient = CurrentDb.OpenRecordset(requete)
nbPatient = 0
totTaille = 0
'--- parcourt du curseur pour traiter chaque patient et faire le cumul des tailles et compter le nombre de patient ---
While Not rsPatient.EOF
nbPatient = nbPatient + 1
totTaille = totTaille + rsPatient(“taille”)
rsVisite.MoveNext
Wend
rsVisite.Close
moyTaille = totTaille / nbPatient
getTailleMoyHomAdulte = moyTaille
End Function

Moi je dois trouver la taille de l'enfant le plus petit et le plus grand.
Merci pour vos réponses
a +
Barbara
A voir également:

1 réponse

irem32
 
Private Function getTailleMaxEnfant() As Double
Dim rs-atient As DAO.Recordset
Dim requete As String
Dim totTaille As Integer
Dim maxTaille As Integer 'oubien...
Dim minTaille As Integer
'--- récupère dans un curseur tous les patients hommes adultes
requete = "select patient.numPatient, patient.taille from patient where patient.sexe = ‘H’ and patient.type = 1"
'modifier le patient.type pour avoir les enfants----------------
Set rsPatient = CurrentDb.OpenRecordset(requete)
maxTaille = 0
'--- parcourt du curseur pour traiter chaque patient et faire le cumul des tailles et compter le nombre de patient ---
While Not rsPatient.EOF
if maxTaille< rsPatient(“taille”) then
maxTaille=rsPatient(“taille”)
end if
rsVisite.MoveNext
Wend
rsVisite.Close
getTailleMaxEnfant= maxTaille
End Function

et pour le min, c'est la meme chose sauf l'initialisation
minTaille=200 (deux metres) et la comparaison

if minTaille> rsPatient(“taille”) then
minTaille=rsPatient(“taille”)
end if

Irem
0