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

IHM Discussion :

Comment créer un code événementiel, Pour modifier ou remplacer une Value par une autre Value


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut Comment créer un code événementiel, Pour modifier ou remplacer une Value par une autre Value
    Bonjour,

    Je viens de commencer la création d'un Formulaire de Modification de Conditionnement.
    Je bloque pour effectuer la validation du BoutonClick.

    Screenshot ci-joint :

    Comment créer un code événementiel, ou une requête dans Access.
    Pour modifier ou remplacer une Value par une autre value.
    Sur un Formulaire : F_Modification que j’essaie de mettre en place.
    Table : CARTES
    1 champs : Code produit
    1 champs : Désignation
    1 champs : conditionnement par cartons
    Le champs conditionnement par cartons contient des values
    Exemple : le code produit : 2000 - Désignation : bleu - Conditionnement par carton : 10
    Je souhaite créer un formulaire pour la modification éventuelle d’une quantité par carton sur un code produit sélectionner depuis une zone liste menu déroulant. Qui laisse apparaitre les enregistrements dans les zones de texte crée…ainsi que la quantité du carton.
    Sur une autre zone de Texte je souhaiterais modifier un autre conditionnement du carton
    Exemple :
    Quantité par cartons 5
    Valider l’enregistrement de cette nouvelle quantité du code produit sélectionner.
    Ouvrir le Formulaire F_Modification
    BoutonClick Changement du conditionnement du Carton
    Sélectionner un Code Cartes sur le Zone de liste Déroulante
    Le conditionnement apparait (Jaune)
    On Click bouton Modification
    La zone de Texte : Changement de Conditionnement est Visible (Vert)
    Mettre un Chiffre (pas de Lettre)
    Validation BoutonClick
    Msgbox : Voulez-vous Pratiquer au changement du Conditionnement
    OUI/NON
    Si OUI Msgbox pour indiquer la nouvelle Quantité du Chiffre incrémenté apparait dans le message.

    Je n’arrive pas à créer soit une requête d’ajout ou d’action ou de mise à jour
    Car cela valide en masse le Champs Conditionnement par cartons sur l’ensemble.
    Alors que je souhaite juste modifier une Cellule
    Si vous avez une solution
    Cordialement
    Images attachées Images attachées  

  2. #2
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Une solution plus courte.
    Le frm est alimenté par une qry qui elle-même est alimentée par la tbl Article
    La cbo est alimentée par la tbl Article
    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
    23
    Private Sub Form_Current()
        Me.contionnement.Enabled = False
    End Sub
    Private Sub cboArticle_AfterUpdate()
        Me.Requery
    End Sub
    Private Sub btnModif_Click()
        Me.contionnement.Enabled = True
        Me.contionnement.SetFocus
    End Sub
    Private Sub contionnement_BeforeUpdate(Cancel As Integer)
    If MsgBox("une modification a été apportée !" _
                & vbCrLf & "Voulez-vous enregistrer la modification ?" _
                , vbYesNo + vbQuestion, "Modification ...") = vbYes Then
        DoCmd.Save
    Else
        DoCmd.RunCommand acCmdUndo
    End If
    End Sub
    Private Sub contionnement_AfterUpdate()
        Me.Requery
        Me.contionnement.Enabled = False
    End Sub
    Images attachées Images attachées  
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut
    Bonsoir Hyperion13

    Je vous remercie de votre aide sur le sujet.
    Actuellement je n'arrive pas à faire la Sauvegarde après le changement de la Value.
    Est qu'il y a une possibilité d’intégrer une commande pour effectuer la sauvegarde dans le Private Sub Valid_Cond_Click
    Qui rejoigne la présentation que vous me proposez comme solution plus Courte. Sur les lignes de codes ci-dessous.


    Cordialement



    Pour le Boutonclick = Modification

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Modif_Cond_Click()
    Me.Changement_Cond.Visible = True
    Me.Valid_Cond.Visible = True
    End Sub
    Pour le BoutonClick = Validation

    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
    23
    24
    25
    26
    27
    28
    29
    Private Sub Valid_Cond_Click()
    'tester si la saisie est bien un nombre, soit grâce à un masque de saisie ou par contrôle
    If IsNumeric(Me.Changement_Cond) Then
        If MsgBox("Voulez-vous pratiquer au changement du Conditionnement ?", vbYesNo, "Attention") = vbYes Then
            If MsgBox("Confirmez-vous la nouvelle Quantité : " & Me.Changement_Cond & " cartes par carton ?", vbYesNo) = vbYes Then
                'Rafraichir ou Vider les Zones de texte (liste codeCartes, Code Cartes, Désignation, Conditionnement)
                Me.Recherche_Cond = ""
                Me.CodeCartes_Cond = ""
                Me.Designation_Cond = ""
                Me.Conditionnement_NB = ""
                Me.Changement_Cond = ""
                ' + Rendre de nouveau Invisible la zone de Texte : Changement (VERT)
                Me.Changement_Cond.Visible = False
                Me.Recherche_Cond.SetFocus
                Me.Valid_Cond.Visible = False
                'Il faut mettre à jour la base de données !!!!!!
            Else
                'si non on ne fait rien
            End If
        Else
                'si non on ne fait rien
        End If
    Else
        MsgBox ("Vous devez entrer un nombre")
        Me.Changement_Cond = ""
    End If
     
    DoCmd.Save
    End Sub

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut
    Bonjour Hyperion13

    Je n'ai pas trouvé seul. j'en suis incapable.
    Mais pour info je me permets d'écrire le code événementiel ci-dessous qui fonctionne, et permet la sauvegarde.
    Cordialement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub FERMER_Cond_Click()
    DoCmd.Close acForm, "F_Modification"
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Modif_Cond_Click()
    Me.Changement_Cond.Visible = True
    Me.Valid_Cond.Visible = True
    Me.Changement_Cond.SetFocus
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Recherche_Cond_AfterUpdate()
    Me.CodeCartes_Cond = Me.Recherche_Cond
    Me.Designation_Cond = DLookup("DESIGNATION", "CARTES", "[ARTICLE]='" & Forms![F_Modification]![CodeCartes_Cond] & "'")
    Me.Conditionnement_NB = DLookup("[CONDITIONNEMENT PAR CARTONS]", "CARTES", "[ARTICLE]='" & Forms![F_Modification]![CodeCartes_Cond] & "'")
    End Sub
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Private Sub Valid_Cond_Click()
    On Error GoTo Erreur
    'tester si la saisie est bien un nombre et que le code est rempli
    If IsNumeric(Me.Changement_Cond) And Len(Forms![F_Modification]![CodeCartes_Cond]) > 0 Then
        If MsgBox("Voulez-vous pratiquer au changement du Conditionnement ?", vbYesNo, "Attention") = vbYes Then
            If MsgBox("Confirmez-vous la nouvelle Quantité : " & Me.Changement_Cond & " cartes par carton ?", vbYesNo) = vbYes Then
     
                'Mise à jour de la base de données
                SQL = "UPDATE CARTES SET CARTES.[CONDITIONNEMENT PAR CARTONS] = [Formulaires]![F_Modification]![Changement_Cond]" _
                & " WHERE CARTES.ARTICLE= [Formulaires]![F_Modification]![CodeCartes_Cond] ;"
                DoCmd.SetWarnings False
                DoCmd.RunSQL (SQL)
                DoCmd.SetWarnings True
                MsgBox "Mise à jour conditionnement effectuée", vbInformation, "Changement"
     
                'Rafraichir ou Vider les Zones de texte (liste codeCartes, Code Cartes, Désignation, Conditionnement)
                Me.Recherche_Cond = ""
                Me.CodeCartes_Cond = ""
                Me.Designation_Cond = ""
                Me.Conditionnement_NB = ""
                Me.Changement_Cond = ""
     
                ' + Rendre de nouveau Invisible la zone de Texte : Changement (VERT)
                Me.Changement_Cond.Visible = False
                Me.Recherche_Cond.SetFocus
                Me.Valid_Cond.Visible = False
            Else
                'si non on ne fait rien
                Exit Sub
            End If
        Else
                'si non on ne fait rien
                Exit Sub
        End If
    Else
        MsgBox "Vous devez entrer un nombre dans la zone CHANGEMENT et un code dans la zone Code cartes", vbExclamation, "Erreur"
        Me.Changement_Cond = ""
    End If
    Exit Sub
    Erreur:
        MsgBox "Une erreur est survenue ou l'opération a été annulée, la mise à jour conditionnement n'a pas effectuée !!!", vbCritical, "Erreur"
        Debug.Print Err.Description
        Debug.Print [Formulaires]![F_Modification]![CodeCartes_Cond]
    End Sub

  5. #5
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Pourquoi faire simple, quand on peut faire compliqué !
    Fichiers attachés Fichiers attachés
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/10/2019, 11h06
  2. Réponses: 6
    Dernier message: 06/07/2016, 16h09
  3. comment créer un add-in pour Word 2000 - XP2003 ???
    Par gide_x dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 13/11/2005, 19h22
  4. [VB6] Code source pour modifier MsgBox
    Par khany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 25/02/2003, 15h13

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