IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

fonction VBA dans du SQL access


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Par défaut fonction VBA dans du SQL access
    Bonjour j'ai une fonction en VBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Public Function majcdap(cdap As String, cd As Integer, an As Double) As String
           an = an Mod 100
        Select Case cd
        Case 0
            majcdap = cdap
        Case 1
            If cdap = 0 Then
                majcdap = cdap
            Else: majcdap = "0" & an & "," & cdap
            End If
        Case Else
            If cdap = 0 Then
                 majcdap = cd & "." & "0" & an
             Else: majcdap = cd & "." & "0" & an & "," & cdap
             End If
        End Select
    End Function
    et un requête SQL qui l'execute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE essemaj SET essemaj.[Cols Durs années précéd] = majcdap([«cdap»],[«cd»],[«an»]), essemaj.[A déclarer] = No, essemaj.CD = 0;
    ça me met la fonction majcdap non définie dans l'expression
    Vous voyez où est l'erreur?????

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    bonjour,
    pourquoi as-tu mis des guillemets dans ta requete sql déjà ?
    les types des champs sont-ils bon par rapport à la fonction ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Par défaut
    quand j'ai été cherchez ma fonction dans la bibliothéque ça me la notée comme ça avec des guillemets.ils ont quels incidences???
    "les types des champs sont-ils bon par rapport à la fonction ?" j'ai pas tout compris...dsl tu peut ré-expliquer
    merçi

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    si ton code SQL est tel quel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE essemaj SET essemaj.[Cols Durs années précéd] = majcdap([«cdap»],[«cd»],[«an»]), essemaj.[A déclarer] = No, essemaj.CD = 0;
    tu dois avoir soit des champs de nom [«cdap»],[«cd»] et [«an»] soit des inputbox qui te demanderont de quoi il s'agit,
    de plus, la fonction majcdap retourne pour le moment une chaine de caractère, est-ce bien le type de [Cols Durs années précéd] ?
    enfin, le code VBA est-il dans un module VBA du projet ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Par défaut
    le type de [Cols Durs années précéd] est bien du texte.
    et le code vba est dans un module du projet

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Par défaut
    Est-ce que à votre avis je pourrais passer par un variable du genre strSql qui executerez la requete.......
    le soucis c'est que je sais pas trop comment ecrire ce bout de code

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/09/2010, 22h00
  2. Fonction VBA dans requêtes vers Access
    Par Laaris dans le forum R
    Réponses: 5
    Dernier message: 03/07/2008, 11h16
  3. comment exécuter ma fonction VBA dans Access
    Par kapotocho dans le forum VBA Access
    Réponses: 23
    Dernier message: 18/01/2008, 16h43
  4. Fonction NVL2() dans PL/SQL
    Par madina dans le forum PL/SQL
    Réponses: 1
    Dernier message: 29/05/2006, 10h25
  5. [VB6]Fonction dans requête SQL Access
    Par jean-pierre96 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 21/04/2006, 19h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo