Rechercher : dans
Par :

[Access] Fonction de module VBA dans requete

Dernière réponse le 22 fév 2006 à 13:39:23 dje-dje, le 28 sep 2004 à 10:26:55 
 Signaler ce message aux modérateurs

Bonjour,
J'ai 2 tables contenant des numeros de téléphone que je voudrais comparer. Dans les 2 tables il s'agit de champ de type texte. Mais dans l'une les numéros sont de la forme " 00 00 00 00 00 " et dans l'autre "00000000".
J'ai crée une fonction SupprEspace dans un module VBA. Comment l'appeler dans ma requete pour que je puisse comparer ces champs?
Je suis evidemment ouvert à d'autres procédés si ils sont plus simples ou fonctionnent.

Merci.

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres 

Meilleures réponses pour « [Access] Fonction de module VBA dans requete » dans :
Mise à jour d'une procèdure ou d'une fonction en VBA VoirMise à jour d'une procédure ou d'une fonction en VBA Souvent la gestion d'un classeur, avec seulement les fonctions standards du tableur, pose des problèmes d'utilisation. Vous songez donc à utiliser Visual Basic pour Applications (VBA) mais...
VB6/VBA Transformer nombre en texte VoirIntroduction Préliminaires VB6 Dans le module de la forme Dans Module1 Introduction La fonction peut transformer des nombres de l'unité jusqu'à 999 tera. Prend en compte la syntaxe pour le français de France, de Belgique et de...
[VBA]Connecter une base de donnée (MDB) à excel VoirConnecter une base de donnée access (MDB) dans une application excel. Ajouter la référence Microsoft DAO object librairy X.X Dans un module général (Module1 par exemple) coller le code ci-dessous Sub CopieDBaccess() Dim BDexp As...
VBScript - Les fonctions et les procédures VoirLa notion de procédure On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction (ou procédure)...
Tableur - Les fonctions mathématiques VoirLes fonctions standards Méthode description ABS() Cette méthode renvoie la valeur absolue d'un nombre, il renvoie donc le nombre s'il est positif, son opposé (positif) s'il est négatif IMPAIR(valeur) Cette méthode renvoie la valeur...
VBScript - Les fonctions mathématiques VoirLes fonctions mathématiques Fonction Description Abs(number) Retourne la valeur absolue d'un nombre. Atn(number) Retourne l'arc-tangente d'un...

1

DaNot, le 28 sep 2004 à 11:14:15

Salut,

Soit en utilisant le generateur d'expression ou en tapant directement le nom de la fonction dans ta requete SQL :
SELECT supprEspacePerso([Numeros]![NUMERO]) AS Expr1
FROM Numeros;

DaNot
un Libre ouvert à la source ...

Répondre à DaNot

2

dje-dje, le 28 sep 2004 à 11:20:34

Merci de ton aide.
Maintenant je n'ai plus d'erreur qd j'appelle ma fonction dans ma requete.
MAIS! Helas, il y a un "mais"...

J'ai procédé ainsi:
Dans ma requete j'ai rajoute un champ:
Tel_Conv = SupprEspace ( [MaTable].[MonTel] )

Mais quand j'execute ma requete, il n'y a pas de changement.
J'ai modifié le code de ma fonction SupprEspace de cette facon:

Function SupprEspace ( S As String )
SupprEspace = 2
End Function

A l'execution, mes numéros de tel sont inchangés alors qu'ils devraient tous etre à "2". Ou alors, il y a un truc que je ne pige pas...

Merci

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres 

Répondre à dje-dje

3

DaNot, le 28 sep 2004 à 11:30:10

Il faut utiliser plutot :

SELECT ..., SupprEspace ( [MaTable].[MonTel] )  as Tel_Conv, ...
FROM ...;

Access aurait du planter et afficher un msg d'erreur non?

DaNot
un Libre ouvert à la source ...

Répondre à DaNot

4

dje-dje, le 29 sep 2004 à 17:38:18

Merci de ton aide.
J'ai eudeux-trois trucs à faire ces derniers jours et je n'ai pas pu revenir.
Mais j'ai avancé de mon côté.

Donc je me suis fait une table de test avec 2 fonctions de test.
1 qui Supprime les espaces, l'autre qui renvoit "A".
Les 2 fonctionnent (ont l'effet souhaité)dans un formulaire.
Seule celles qui renvoit "A" fonctionne dans une requete...
Là, j'en perd mon latin...

Encore merci de ton aide.

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres 

Répondre à dje-dje

5

dje-dje, le 12 oct 2004 à 09:46:48

Pour info, si je renomme ma fonction en "Toto ", ca fonctionne...
Pourquoi, si j'utilise un mot réservé, le compilateur ne me l'indique pas?

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres 

Répondre à dje-dje

6

aurelie, le 22 fév 2006 à 13:30:10

Salut dje dje je realise un porojet un peu du mm style que toi et je suis perdu pourrais tu m'aider ??
g aussi 2 tables que je veux comparer un peu dans ton style tu es d'accord pour me rendre service??

merci

Répondre à aurelie

7

 dje-dje, le 22 fév 2006 à 13:39:23

J'ai rien contre mais je n'ai pas retouché a Access depuis l'epoque du sujet (Ca va faire donc 2 ans). Rien ne t'empeche de creer un nouveau poste et de mettre un lien vers ce nouveau post dans celui-ci

a+
dje-dje

Il y a 10 types de personne dans le monde,
ceux qui comprennent le binaire et les autres 

Répondre à dje-dje