Mettre formule si sous access

chrischris -  
 x -
Bonjour,

je souhaiterais mettre une condition Si sous access, seulement je ne sais pas comment faire
ma formule est si X >0 alors X=Y sinon X=Z

Merci d'avance pour votre aide

13 réponses

  1. bnb
     
    if x > 0 then
    x = y
    else
    x = z
    end if

    Où est le problème?
    2
  2. chrischris
     
    je débute sur access,

    le problème s'est que je n'arrive pas à appliquer la formule. voici ma requete:

    SELECT Véhicule.imma, km_compteur,estimation_conduc, km retenu
    FROM (Véhicule INNER JOIN affectation ON Véhicule.imma = affectation.imma) INNER JOIN km_réalisés ON Véhicule.imma = km_réalisés.imma
    IF estimation_conduc>"0"
    THEN
    km retenu = estimation_conduc
    ELSE
    km retenu = km_compteur
    END IF;

    je n'arrive pas à voir où est l'erreur

    Merci d'avance
    0
  3. bnb
     
    Déjà plus clair... Ce n'est pas du VBA mais du sql...
    dans ce cas utiliser la fonction iif : [km_retenu] = iif( [estimation_conduc]>0 ;[ estimation_conduc] ; =[km_compteur] )
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. bnb
     
    Quelle version d'access car le sql ne me paraît pas correct!
    Sinon de rien pour l'aide!
    0
  6. chrischris
     
    c'est access 2003,

    je viens de mettre la fonction ça ne fonction pas
    0
  7. bnb
     
    Bon envoie ton sql en fichier txt avec la description de tes tables...
    Je verrai ce que je peux faire!

    sthub arrobase versateladsl point be
    0
    1. etablissement atig Messages postés 1 Statut Membre
       
      salut,

      moi aussi j'ai un probléme avec les condition Access, peut me dire comment faire pour calculer :

      nombre heure =''A''
      taux sup = ''B''
      '
      la formule est : A* B à condition ''B'' change soit 25% ou 50% ou 100% (ses champs sont dans un champs liste)

      si je donne la valeur : ''25%'' dans la liste il devra faire se calcul : A*25%
      si je donne la valeur : ''50%'' dans la liste il devra faire se calcul : A*50%
      si je donne la valeur : ''100%'' dans la liste il devra faire se calcul : A*100%

      merci
      a plus
      0
  8. chrischris
     
    table affectation
    clef primaire: imma et num_conduc
    imma (null interdit: Non, indexé : Non, compression unicode Oui, Mode IME: aucun contrôle, Mode de formulation IME: aucun)
    num_conducteur( null interdit: Non, Indexé Oui-avec doublons)

    autres attributs:
    date_affect
    estimation_conduc

    Table km_réalisés
    clef primaire: num_miseàjour (num auto, indexé: oui sans doublons)

    autres attributs:
    date_miseàjour
    km_compteur (null interdit:non; indexé:non)
    imma
    retenu (null interdit:non; indexé:non)

    table Véhicule:
    imma (texte; null:interdit, indexé:oui sans doublons, mode IME aucun contrôle, Mode de formulation IME: Aucun)
    modèle du véhicule

    SQL

    SELECT Véhicule.imma, affectation.estimation_conduc, km_réalisés.km_compteur, km_réalisés.retenu
    FROM (Véhicule INNER JOIN affectation ON Véhicule.imma = affectation.imma) INNER JOIN km_réalisés ON Véhicule.imma = km_réalisés.imma
    WHERE (((Véhicule.retour_ste_loc)=No))
    iif: retenu = IIF( estimation_conduc>0 ;estimation_conduc; = km_compteur );

    merci

    Table km_réalisés

    SQL

    SELECT Véhicule.imma, affectation.estimation_conduc, km_réalisés.km_compteur, km_réalisés.retenu
    FROM (Véhicule INNER JOIN affectation ON Véhicule.imma = affectation.imma) INNER JOIN km_réalisés ON Véhicule.imma = km_réalisés.imma
    WHERE (((Véhicule.retour_ste_loc)=No))
    iif: retenu = IIF( estimation_conduc>0 ;estimation_conduc; = km_compteur )
    0
  9. bnb
     
    voici voilà...

    SELECT V.imma, A.estimation_conduc, K.km_compteur, K.retenu, V.retour_ste_loc, IIf([estimation_conduc]>0,[estimation_conduc],[km_compteur]) AS Calcul_retenu
    FROM (Véhicule AS V INNER JOIN km_réalisés AS K ON V.imma = K.imma) INNER JOIN affectation AS A ON V.imma = A.imma
    WHERE (((V.retour_ste_loc)=No));

    et bonne m... !
    0
  10. bnb
     
    voici voilà...

    SELECT V.imma, A.estimation_conduc, K.km_compteur, K.retenu, V.retour_ste_loc, IIf([estimation_conduc]>0,[estimation_conduc],[km_compteur]) AS Calcul_retenu
    FROM (Véhicule AS V INNER JOIN km_réalisés AS K ON V.imma = K.imma) INNER JOIN affectation AS A ON V.imma = A.imma
    WHERE (((V.retour_ste_loc)=No));

    et bonne m... !
    0
  11. tonio
     
    Salut, j'ai créé un formulaire qui permet de réaliser les versements. Je voudrais créer une fonction avec si qui permettra d'extraire les
    factures soldées.
    Soit:
    si montant-versement = 0
    alors observation reçoit soldé
    sinon non-soldé
    fin si

    merci
    0
  12. AnonymeMan
     
    Coucou a tous,

    Je suis en plein stage à l'étranger et l'on me demande de faire des choses trop poussées pour moi sur Access. Ce que je viens de lire ici c'est que l'on peut créer une formule SI sur access ?

    En fait j'ai une compagnie en clé primaire, et dans la même table j'ai Adresse, Numéro de compagnie et d'autres informations sur cette compagnie.
    Donc :

    TABLE : Compagnie

    Nom de la compagnie, (Clé primaire),
    Numéro de la compagnie,
    Adresse,
    Code Postal,
    Ville...

    Puis-je faire en sorte que ma compagnie (sachant que j'en ai plusieurs) aie plusieurs adresses pour un même nom ?

    En fait, imaginons Nestlé et Nike. Nestlé a 3 adresses a Londres et Nike 5 a New York.
    J'aimerais que Access permette d'avoir trois adresses et 5 pour Nike. Je ne peux pas créer des champs adresse 2, adresse 3 ou adresse 4 car cela dépends des compagnies et je ne veux pas de blancs. Merci.

    Amélie
    0
    1. x
       
      Salut!

      Je te dis directement que je ne peux pas du tout t'aider.... j'ai à vrai dire à peu près le même problème. Je suis toute nouvelle sur Access.
      Je voudrais attribuer à 1 contact: 1 à 3 compétences et je voudrais effectuer un requête capable d'afficher par type de compétence tous les contacts qui la possèdent. Sachant que je ne veux pas non plus de blancs étant donné que certains contacts n'ont qu'une compétence... (dommage pour eux...lool).
      Je voudrais insérer une fonction SI mais je ne sais pas où il faut la placer (dans macro, requètes.... sur quelle ligne exactement) ni comment la rédiger.

      Elle serait du type (pour que vous saisissiez mieux...):

      If compétence type = compétence N°1 du contact
      Then "Afficher le nom du contact qui possède cette compétence N°1"

      If compétence type= compétence N°2 du contact
      Then "Afficher le nom du contact qui possède cette compétence N°2"

      If compétence type= compétence N°3 du contact
      Then "Afficher le nom du contact qui possède cette compétence N°3"
      Else "Etudier le contact suivant sans rien afficher"

      Merci d'avance pour votre aide!!!! et si tu as trouvé une réponse, n'hésites pas à me contacter!!

      @plus
      0