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 :

Valider un formulaire par comparaison de deux champs calculés [AC-2007]


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 88
    Points : 36
    Points
    36
    Par défaut Valider un formulaire par comparaison de deux champs calculés
    bonsoir

    j'ai un formulaire vente incorporant 2 sous formulaires
    - un ss formulaire vente1 qui me donne le total de ma vente repris dans le formulaire vente(Totalvente)
    - un ss formulaire paiement qui me permet de ventiler le moyen de paiement(espèces,chèque,CB) avec sa somme correspondante et dont le total"sommeréglée" est repris dans le formulaire vente
    A la validation par un bouton je voudrais (sur clik je pense) pouvoir vérifier que "sommeréglée=Totalvente".....je pense que cela ne peut se faire que par code. Quelqu'un peut m'aider car je débute !
    merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 359
    Points : 23 829
    Points
    23 829
    Par défaut
    Bonjour.

    Personnellement je ferai un champ calculé en bas mon sous-formulaire de détail qui ferai le total.
    Et j'y mettrai une mise en forme conditionnelle du type =([TotalDetail]=[Parent].[NomSousVente].[Form].[Totalvente]) en choissant un fond rouge.

    sinon si tu tiens à le faire par code, quelque chose comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if DSum(...)<>DFisrt(...) then
      msgbox "Différence entre total et détail"
    end if
    devrait faire l'affaire.

    il faut remplacer les ... par les critères adaptés. Voir l'aide des fonctions pour les détails.

    A+

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 88
    Points : 36
    Points
    36
    Par défaut Valider un formilaire par comparaison de 2 champs calculés
    bonsoir
    j'ose vous montrer mon code de débutant
    la première étape marche(valeurs différente) mais pas si les valeurs sont identiques c-a-d validation du formulaire(enregistrement)
    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
    Private Sub BoutonValidelavente_Click()
     
    Dim strMsg As String, strTitre As String
    Dim intStyle As Integer
     
    If (Me![Total]) <> (Me![Sommeréglée]) Then
    strMsg = " La somme réglée est differente du Total"
    intStyle = vbOKOnly
    strTitre = "Attention"
    MsgBox strMsg, intStyle, strTitre
    Else
     
    End If
     
    End Sub
    merci de votre aide

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 88
    Points : 36
    Points
    36
    Par défaut
    petit oubli ....les 2 parties du code
    si total = sommeréglée la validation ferme le formulaire vente et lance une requête mise à jour"vente finale" mais cela ne marche pas

    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
    18
    19
    20
    21
    22
    Private Sub BoutonValidelavente_Click()
     
    Dim strMsg As String, strTitre As String
    Dim intStyle As Integer
     
    If (Me![Total]) <> (Me![Sommeréglée]) Then
    strMsg = " La somme réglée est differente du Total"
    intStyle = vbOKOnly
    strTitre = "Attention"
    MsgBox strMsg, intStyle, strTitre
     
    Else
    DoCmd.Close acForm, "ventes"
    DoCmd.OpenQuery "Requête vente finale", acViewNormal, acEdit
     
    valide_valide_vente_Exit:
    Exit Function
    End Function
     
    End If
     
    End Sub
    Merci de votre aide

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 88
    Points : 36
    Points
    36
    Par défaut Valider un formilaire par comparaison de 2 champs calculés
    finalement j'ai trouvé mon erreur...voilà le code...mais peut-être n'est-il pas orthodoxe! merci de me le signaler.
    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
    18
    19
    20
    21
    22
    Private Sub BoutonValidelavente_Click()
     
       Dim strMsg As String, strTitre As String
       Dim intStyle As Integer
     
       If (Me![Total]) <> (Me![Sommeréglée]) Then
       strMsg = " La somme réglée est differente du Total"
       intStyle = vbOKOnly
       strTitre = "Attention"
       MsgBox strMsg, intStyle, strTitre
     
       Else
     
       DoCmd.Close acForm, "Ventes"
       DoCmd.OpenQuery "Requête vente finale", acViewNormal, acEdit
     
    valide_valide_vente_Exit:
       Exit Sub
     
    End If
     
    End Sub

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 770
    Points : 14 812
    Points
    14 812
    Par défaut
    bonsoir,
    les lignes 17 et 18 devraient être en dehors du If End If et à mon sens sont inutiles car il n'y a pas de débranchement de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If quelquechose then goto valide_valide_vente_Exit
    Tel qu'il est fait, le code sortira du Sub tout seul après le End If

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

Discussions similaires

  1. [AC-2007] Formulaire de recherche et comparaison de deux champs
    Par howvrell dans le forum IHM
    Réponses: 5
    Dernier message: 27/06/2009, 00h07
  2. Comparaison De Deux Champ
    Par olivier67 dans le forum Access
    Réponses: 1
    Dernier message: 21/04/2006, 18h58
  3. Valider un formulaire par un lien et non par un bouton
    Par budiste dans le forum Langage
    Réponses: 2
    Dernier message: 14/12/2005, 11h58
  4. Comparaison entre deux champs de deux tables différentes
    Par liam81150 dans le forum Requêtes
    Réponses: 1
    Dernier message: 26/09/2005, 20h53
  5. Valider un formulaire par une image
    Par Fleep dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 31/10/2004, 01h50

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