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

VBA Access Discussion :

Fonction SQRT non reconnu


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 154
    Points : 66
    Points
    66
    Par défaut Fonction SQRT non reconnu
    Bonjour,
    Je travail sous access 2003, et j'ai besoin d'utiliser la fonction SQRT.
    La formule que j'utilise ne renvoit aucun résultat j'ai donc essayé directement en enregistrant une requete sous access et la j'ai le message "undefined fonction SQRT in expression".
    La fonction POW ne passe pas non plus, pourtant les fonctions AVG ou SUM passent, est-ce un problème de librairie? J'ai vu pourtant dans la FAC que SQRT était reconnu par access.
    Pour info voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    valeur = InputBox("Choisissez une valeur pour calculer l'écart-type")ecart = "SELECT SQRT((POW(valeur-AVG(Replace(SaisieDetail" & annee & ".ValeurCtrl,'.',','))))/(COUNT(SaisieDetail" & annee & ".CodeCtrl)-1)) FROM SaisieDetail" & annee & " LEFT JOIN SaisieMaster" & annee & " ON SaisieDetail" & annee & ".KeyMaster = SaisieMaster" & annee & ".RecKey WHERE SaisieDetail" & annee & ".CodeCtrl=[Formulaires]![Capabilite]![Dim] "
    If Me!PN <> "" Then
       ecart = ecart & " AND SaisieMaster" & annee & ".Pn=[Formulaires]![Capabilite]![Pn]"
    End If
    Et la requete que j'enregistre dans Access(un peu plus simple...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT SQRT((POW(3-AVG(Replace(SaisieDetail2008.ValeurCtrl,'.',','))))/(Count(SaisieDetail2008.CodeCtrl)-1)) AS Expr1
    FROM SaisieDetail2008 LEFT JOIN SaisieMaster2008 ON SaisieDetail2008.KeyMaster = SaisieMaster2008.RecKey
    WHERE (((SaisieDetail2008.CodeCtrl)='D1') AND ((SaisieMaster2008.Pn)='65236-418'));

  2. #2
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 154
    Points : 66
    Points
    66
    Par défaut
    J'ai trouvé pour racine, c'est pas SQRT mais SQR...
    Par contre toujours pas trouvé pour le carré...

  3. #3
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Points : 2 221
    Points
    2 221
    Par défaut
    bonjour,

    je connais 2 solutions pour mettre au carré :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    MaValeur*MaValeur
    ou
    MaValeur^2
    philippe

  4. #4
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 154
    Points : 66
    Points
    66
    Par défaut
    Ben c'est ce que j'ai fais, j'ai utilisé le * . Par contre le ^ ne marche pas.
    Donc au final il n'y a pas de fonction prédéfinie?

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Points : 2 221
    Points
    2 221
    Par défaut
    Surprenant que ^2 ne fonctionne pas...

    On peut voir la requete ?

    Philippe

  6. #6
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Citation Envoyé par noakiss Voir le message
    Par contre le ^ ne marche pas.
    Normalement ça marche.
    Surtout si Philben le dit

    autrement si j'ai bonne mémoire : X à la puissance N = Exp(N*Log(X))

    A+

  7. #7
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 154
    Points : 66
    Points
    66
    Par défaut
    alors la requete que j'utilise qui fonctionne est celle-ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ecart = "SELECT SQR(((valeur-AVG(Replace(SaisieDetail" & annee & ".ValeurCtrl,'.',',')))*(valeur-AVG(Replace(SaisieDetail" & annee & ".ValeurCtrl,'.',','))))/(COUNT(SaisieDetail" & annee & ".CodeCtrl)-1)) FROM SaisieDetail" & annee & " LEFT JOIN SaisieMaster" & annee & " ON SaisieDetail" & annee & ".KeyMaster = SaisieMaster" & annee & ".RecKey WHERE SaisieDetail" & annee & ".CodeCtrl=[Formulaires]![Capabilite]![Dim] "
    If Me!PN <> "" Then
        ecart = ecart & " AND SaisieMaster" & annee & ".Pn=[Formulaires]![Capabilite]![Pn]"
    End If
    et c'elle que j'essayait de faire fonctionner est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ecart = "SELECT SQR(((valeur-AVG(Replace(SaisieDetail" & annee & ".ValeurCtrl,'.',',')))^2)/(COUNT(SaisieDetail" & annee & ".CodeCtrl)-1)) FROM SaisieDetail" & annee & " LEFT JOIN SaisieMaster" & annee & " ON SaisieDetail" & annee & ".KeyMaster = SaisieMaster" & annee & ".RecKey WHERE SaisieDetail" & annee & ".CodeCtrl=[Formulaires]![Capabilite]![Dim] "

    Ah Philben je vois que tu as un grand Fan
    Je vais tester avec la fonction log. Merci

  8. #8
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 154
    Points : 66
    Points
    66
    Par défaut
    Nikel LedZeppII, ta formule fonctionne bonne mémoire!!
    Merci bien

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

Discussions similaires

  1. Fonctions intégrées non-reconnues
    Par BjornDunkerbeck dans le forum Runtime
    Réponses: 8
    Dernier message: 10/07/2007, 09h55
  2. [gcc 4.0] fonction stat64 non reconnue.
    Par Mr_Chut dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/07/2006, 12h04
  3. [Fonction] fonction mysql_connect non reconnue
    Par O'neill dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 20/02/2006, 18h47
  4. Réponses: 5
    Dernier message: 13/02/2006, 13h59
  5. [ADO]Fonction nz non reconnue
    Par FRINDEL dans le forum Bases de données
    Réponses: 4
    Dernier message: 16/01/2006, 17h23

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