VBA Access: Urgent

Fermé
Babeth - 4 août 2003 à 11:31
 Babeth - 4 août 2003 à 14:25
Bonjour,

J'aimerai faire une fonction qui récupère le nb de champs qui existent pour chacune de mes requêtes et utiliser la variable NbChamp qui en résulte, dans d'autres modules.

Merci d'avance
Babeth

4 réponses

maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453
4 août 2003 à 13:00
Bonjour!!

Tu peux pas faire une autre requête en utilisant la fonction
count
?

tiens pour plus de renseignements!
http://www.toutestfacile.com/phpinit.php?tef_site=sql&chap=aggregate1

bon courage

Maily   :-))))
0
Utilisateur anonyme
4 août 2003 à 13:12
Salut,

Tu peux utiliser la fonction Fields.Count pour un recordset.

Exemple:

1. Tu crée un module dans lequel tu tapes la fonction suivant:

Public Function NbrChamp (NomTbl As Recordset) As Integer
Dim mDb As Database
Dim mRs As Recorset

Set mDb = CurrentDb
Set mRs = mDb.OpenRecordset(NomTbl , dbOpenDynaset, dbSeeChanges, dbPessimistic)

NbrChamp = mRs.Fields.Count

End Function

2. Tu sauves ton module (peu importe le nom)
3. Tu peux utiliser cette fonction par exemple:
Si tu as une query "MaQuery"

Test = nBrChamp("MaQuery")
Test sera égal au nombre de champs de ta query



Rien n'est plus dangereux qu'une idée quand on a 
qu'une idée
  :-)
0
J'essaie tout ça.

Merci
0
Apparemment, j'ai un problème de type sur ma variable Test ("Type mismatch") pourtant elle est en Integer.
0
C'est encore moi (je sais j'suis chiante)
Pour la première erreur j'avais fais une bourde mais pour le type de ma variable j'vois toujours pas.

Vu que t'as l'air de t'y connaitre un peu en VBA Access, si tu pouvais me donner ton adresse mail parce qu'à mon avis j'aurais encore besoin d'aide: j'en ai jamais fais et mon stage dur encore 2 mois.

Je te remercie
Babeth
0
Utilisateur anonyme
4 août 2003 à 14:21
Je préfère que TU me donnes ton adresse. Je t'envois un mail de suite afin que tu connaisses la mienne. Le mail que j'utilises est un mail professionel et je ne voudrais pas que des spameurs le prennent pour cible.

:-)

Rien n'est plus dangereux qu'une idée quand on a 
qu'une idée
  :-)
0
Babeth > Utilisateur anonyme
4 août 2003 à 14:25
OK

babeth_peysson@yahoo.fr
0
On me dit que ma fonction n'est pas définie lorsque je l'utilise dans ma procédure SUB (qui est dans un autre module: c'est peu être là qu'il y'a un binzt?)
0
Utilisateur anonyme
4 août 2003 à 14:04
Es-tu sûr de l'avoir définie comme PUBLIC Function ?

Parcequ'il n'y a aucune raison pour qu'il ne la reconnaisse pas. J'ai essayé et sa marche!

Quel nom prote le module contenant la fonction?

Rien n'est plus dangereux qu'une idée quand on a 
qu'une idée
  :-)
0