Syntaxe IF

KARO -  
 KARO -
Bonjour,je n'arrive à écrire la condition de mon IF:
If (ME.QUANT_SORITE) > ..... Then
msgbox 'La quantité saisie est supérieure à celle disponible'
end if
Pouvez vous m'aider?
Configuration: Windows XP
Internet Explorer 7.0

4 réponses

  1. KARO
     
    J'ai oublié de dire qu'à la place des petits points, je voudrais mettre le champ d'une autre table
    Est ce possible et quelle est la syntaxe?
    0
  2. amigo
     
    Bonjour,

    Pour pouvoir t'aider il nous faut plus de détails
    1) quelle application (Acces, Excel, ...)
    2) le test doit comparer le contenu de controles textbox, de variables, de cellules ...

    A+
    0
    1. KARO
       
      C'est vrai que je n'ai rien précisé.
      J'utilise ACCESS 2003 et le test concerne le contenu de 2 champs de 2 tables différentes de type numérique pour les deux.
      QUANT_SORTIE correspond à un champ tapé dans mon formulaire de saisie.
      Et au moment d'enregistrer cette quantité (table SORTIE champ QUANT_SORTIE), j'intègre ce IF pour être bien sur que la quantité saisie (qui va donc sortir) est disponible dans la table de stock correspondante.(table STOCK champ QUANT_DISPO)
      Comment écrire cette commande?avec des (), des"",des[]???
      0
  3. amigo
     
    Le test IF doit ressembler à ça, en supposant que MyRecordset ait bien été initialisé.

    if Me.QUANT_SORTIE .value < MyRecordset.Fields("QUANT_DISPO").Value then
       msgbox "La quantité saisie est supérieure à celle disponible"
       exit sub 
    else 'sinon
    '...par exemple
    ' MyRecordset.Fields("QUANT_DISPO").Value = MyRecordset.Fields("QUANT_DISPO").Value - Me.QUANT_SORTIE .value 
    '...
    end if


    Salut.
    0
    1. KARO
       
      C'est quoi ce Recordset?
      et pour initialiser Myrecordset, je dois faire comment?
      Il faut que je le définisse au début de mon code VBA en dessous de Option Compare Database?
      en tant que Integer si c'est un entier?
      0
  4. amigo
     
    Désolé , mais je ne suis pas utilisateur chevronné d'Acces.

    Je peux juste te dire que c'est une variable de type DAO.Recordset di doit etre declarée dans la section decalration par:
    Dim MyBase As DAO.Database
    Dim MyTable As DAO.TableDef
    Dim MyRecordset As DAO.Recordset

    Ensuite on utilise ces variables dans des instructions telle que:
    sSql = "select TABLE1" & "[" & MyTable.Name & "]"
    Set MyRecordset = Mybase.OpenRecordset(sSql)

    ça ce complique sérieusement si on ne maitrise pas VB, SQL et Acces.

    Crée un nouveau post en essayant d'etre plus precis dans ta question, afin de cibler les personnes qui pourraeint t'aider.
    [VBA Acces] Aide pour ...

    Salut.
    0
    1. KARO
       
      merci beaucoup, je vais essayer.
      0