Utiliser une fonction personnelle avec une requete sql sous VB6

isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008 - 12 août 2008 à 21:11
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008 - 12 août 2008 à 23:12
Bonjour,

Je cherche à utiliser une fonction personnelle avec une requête sous VB6.

Select nom,nomfunction (date1,date2) from nomtable; La fonction a été déclarer dans un module dans VB6 et fonction correctement sous access.
Sur VB6 j'ai un message m'indiquant que la fonction 'nomfonction' est non définie dans l'expression. Cette fonction calcule le nombre de jours ouvrables.

Merci de votre aide 

8 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
12 août 2008 à 21:21
Ta fonction est non définie parce qu'elle est dans ton code VB6 alors que ta requette s'exécute, elle, dans la base de donnée.
Ta base de donnée ne connais pas ta fonction.

Ca ne pourrait marcher que si ta fonction est, non pas dans ton code VB6, mais en tant que procédure stockée dans la base de données.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008
12 août 2008 à 21:42
Merci pour cette réponse. Mais j'utilise un base de données access qui ne posséde pas de procédure stockée. Du moins à ma connaissance. Dans le cas contraire comme procéder.

Je peux excuter la réquete située dans access à partir de VB6. Mais, je ne veux pas utliser cette procédure car la maintenance de mon programme serait trop délicate lors des mises à jours futures
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
12 août 2008 à 21:50
Si tu veux utiliser ta fonction dans la requette, il fat qu'elle soit obligatoirement dans la base.

Tu ouvre ta base Access. Dans l'écran présentant la structure de ta base, tu choisi Module (ou alors tu passe par le Menu Outil/Macro/Visual Basic Editor, ou alors tu presse Alt+F11).

Tu as l'éditeur VBA qui va s'ouvrir. (Il ressemble très étrangement à VB6  )

Il ne te reste plus qu'à coller le code de ta fonction.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008
12 août 2008 à 22:33
La fonction existe dans un module de ma base de données. Mais lorsque j'execute la requete depuis VB6, j'ai toujours le même méssage d'erreur. Fonction 'nomdelafonction' non définie dans l'expression.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
12 août 2008 à 22:45
J'ai eu le même problème ... et ce n'est pas possible de le faire en dehors de Access si c'est du VBA.
Par contre tu peux le faire avec une requête Access
_________________________________________________________________________
VB.NETis good ...VB6is better<
0
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008
12 août 2008 à 23:06
Merci de votre aide. Puisque cela semble impossible, je vais me resoudre à utiliser ma requête via Access. Dans le cas ou une personne a une solution, je suis preneur. Ou existe-il une solution pour calculer dans une requete lsous VB6 e nombre de jours ouvres entre deux dates. En effet, la fonction Datediff calcule le nombre jour total.  
0
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008
12 août 2008 à 23:06
Merci de votre aide. Puisque cela semble impossible, je vais me resoudre à utiliser ma requête via Access. Dans le cas ou une personne a une solution, je suis preneur. Ou existe-il une solution pour calculer dans une requete lsous VB6 e nombre de jours ouvres entre deux dates. En effet, la fonction Datediff calcule le nombre jour total.  
0
isanar Messages postés 6 Date d'inscription mercredi 15 octobre 2003 Statut Membre Dernière intervention 12 août 2008
12 août 2008 à 23:12
Merci de votre aide. Puisque cela semble impossible, je vais me resoudre à utiliser ma requête via Access. Dans le cas ou une personne a une solution, je suis preneur. Ou existe-il une solution pour calculer dans une requete lsous VB6 e nombre de jours ouvres entre deux dates. En effet, la fonction Datediff calcule le nombre jour total
0
Rejoignez-nous