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

Access Discussion :

correction formule


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut [résolu] correction formule
    je suis une débutante totale, et j'essaye de faire une formule imbriquée VraiFaux.Pour l'instant, ça donne ça, mais il y doit y avoir plein de fautes de syntaxe....:
    SET [ilot bis] = VraiFaux([ilot 000]<10;"00" & [ilot 000] ;VraiFaux([ilot 000]>=10;"0" & [ilot 000];VraiFaux([ilot 000]>=100;[ilot 000])))

    c'est surtout au niveau des ; que ça pèche, je ne sais pas si je dois mettre des espaces, ou pas...

    Si quelqu'un voulait bien me la corriger un peu? Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Tout ça m'a l'air cohérent.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    VraiFaux([ilot 000]<10;"00" & [ilot 000];
    VraiFaux([ilot 000]>=10;"0" & [ilot 000];
    VraiFaux([ilot 000]>=100;[ilot 000]
    )
    )
    )
    Pour les espaces pas d'inquiétude, il ne sont pas singificatif à ce niveau et ACCESS corrigera seul (QBE ou Générateur d'expression)
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    oui, ben, n'empèche que ta formule n'est pas acceptée, il m'indique qu'il y a une erreur de syntaxe, et me pointe un ;

  4. #4
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    SET [ilot bis] = VraiFaux([ilot 000]<10;"00" & [ilot 000] ;VraiFaux([ilot 000]>=10;"0" & [ilot 000];VraiFaux([ilot 000]>=100;[ilot 000])))

    Essaie ça :

    SET [ilot bis] = left("000"; len(LongTotale - [ilot 000])) & [ilot 000]

    En remplaçant LongTot par la longueur totale de la chaine à obtenir.
    [Access] Les bases du débogage => ici

  5. #5
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Après vérification je ne vois pas d'erreurs. Pourtant j'ai jeter ma canne blanche et mes lunettes noires...
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  6. #6
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    personne n'aurait une idée? Il ne veut pas m'accepter la formule, il pointe tout le temps ce ;

  7. #7
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Ca fonctionne pas le
    SET [ilot bis] = left("000"; len(LongTotale - [ilot 000])) & [ilot 000]
    ?
    [Access] Les bases du débogage => ici

  8. #8
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    non
    là aussi, il me pointe le ;

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    je viens de remplacer ; par , et ça marche : :
    Enfin, la formule set acceptée, mais le résultat n'est pas le bon...
    Je vais réessayer ma formule, maintenant...

  10. #10
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Tu peux copier tout ton SQL ?
    [Access] Les bases du débogage => ici

  11. #11
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    Tu peux copier tout ton SQL ?
    c'est à dire?
    Ma formule, corrigée sans les ; , donne l'erreur suivante maintenant:
    fonction VraiFaux non définie dans l'expression

  12. #12
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    T'es en mode création de requète, là, non ?
    Si oui, mets toi en mode SQL et copie le texte.
    Si non, t'es où ?
    [Access] Les bases du débogage => ici

  13. #13
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    oui, je suis en mode SQL:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    UPDATE Producteurs_2005_reman 
    SET [ilot 000 texte]=
    VraiFaux([ilot]<10,"00" & [ilot],
    VraiFaux([ilot]>=10,"0" & [ilot],
    VraiFaux([ilot]>=100,[ilot]
    )
    )
    )
    modération : cafeine, obligatoire

  14. #14
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE Producteurs_2005_reman
    SET [ilot bis] = left("000", len(LongTotale - [ilot 000])) & [ilot 000]

    modération : cafeine, obligatoire
    [Access] Les bases du débogage => ici

  15. #15
    say
    say est déconnecté
    Membre expérimenté
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Points : 1 300
    Points
    1 300
    Par défaut
    avec des , à la place des ;
    ça passe?
    Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
    _ _ _ _ _ _ _ _ _

    La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
    _ _ _ _ _ _ _ _ _

    Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres

  16. #16
    Membre averti

    Profil pro
    Inscrit en
    Mai 2004
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 236
    Points : 310
    Points
    310
    Par défaut
    Tu peux essayer le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE Producteurs_2005_reman
    SET [ilot 000 texte]=IIF([ilot]<10,"00" & [ilot],IIF([ilot]>=10,"0" & [ilot],IIF([ilot]>=100,[ilot])))
    Je te conseillerais plutot le code suivant pour faire ce que tu veux normalement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE Producteurs_2005_reman
    SET [ilot 000 texte]=IIF([ilot]<10,"00" & [ilot],IIF([ilot]<100 ,"0" & [ilot],[ilot]))
    En espérant t'avoir aidé.[/code]

  17. #17
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    avec ça:

    SET [ilot bis] = left("000"; len(LongTotale - [ilot 000])) & [ilot 000]
    il me colle juste trois 0 devant chaque chiffre, sans adapter le nombre de 0 qu'il faut vraiment

  18. #18
    Membre à l'essai
    Inscrit en
    Février 2006
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 56
    Points : 16
    Points
    16
    Par défaut
    Code:
    UPDATE Producteurs_2005_reman
    SET [ilot 000 texte]=IIF([ilot]<10,"00" & [ilot],IIF([ilot]>=10,"0" & [ilot],IIF([ilot]>=100,[ilot])))
    echec conversion type, violation verrou, violation clé...

    Je vais peter un plomb...

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 419
    Points : 508
    Points
    508
    Par défaut
    y a un pb dans l'enchainement des conditions.
    la 2 et la 3 peuvent etre vrai en meme temps.

    De toute façon, pour 3 bornes il ne faut que 2 conditions :

    si([ilot] < 10;Vrai;si([ilot]<100;vrai;faux))

  20. #20
    Membre averti

    Profil pro
    Inscrit en
    Mai 2004
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 236
    Points : 310
    Points
    310
    Par défaut
    D'après le message d'erreur [ilot] est du texte et non du numérique, donc tu peux essayer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE Producteurs_2005_reman
    SET [ilot 000 texte]=IIF(Cint([ilot])<10,"00" & [ilot],IIF(Cint([ilot])<100 ,"0" & [ilot],[ilot]))
    En espérant t'avoir aidé.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [XL-2010] Étendre formule correctement
    Par gironron dans le forum Excel
    Réponses: 2
    Dernier message: 07/08/2013, 09h16
  2. Calculs : correction mais sans effacer les formules
    Par francescu dans le forum Excel
    Réponses: 14
    Dernier message: 23/04/2013, 13h48
  3. Formulation correcte de TRIGGER en SQL
    Par Cecolympe dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/05/2010, 17h49
  4. Comment formuler cet énoncé en programme linéaire correct
    Par Lucas Panny dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 19/08/2009, 13h47
  5. Matrice carée correction de formule
    Par dmcours dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/04/2008, 12h22

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