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

Macros et VBA Excel Discussion :

Msgbox si condition combinée [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 51
    Par défaut Msgbox si condition combinée
    Bonjour à tous,
    J'ai développé un outil de planif pour le boulot, j'aimerais que lorsque l'utilisateur renseigne 2 cellules, (1 avec le nombre et 1 avec le type) ,l'utilisateur renseigne en 1er la cellule avec nombre puis le type "CRAPAUD" il faut absolument que le nombre soit modulo de 8.

    J'espère avoir été claire.

    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
     
    If Target.Column = 11 Then
     
            If Range("H" & Target.Row).Value <> "" Then
     
                If Range("K" & Target.Row).Value = "CRAPAUD" And Range("H" & Target.Row).Value Mod 8 = 0 Then
     
                Else
     
                    MsgBox "ERREUR!!!!" & vbCrLf & "Veuillez vérifier le nombre de crapaud....", vbCritical, "ERREUR!!!!"
     
                End If
            End If
     
    End If

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    quelle est la question et le problème ? A première vue ton bloc If/End If tient la route

  3. #3
    Membre averti
    Inscrit en
    Février 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 51
    Par défaut
    Bonjour joe.levrai,

    Une chose importante que je n'aie pas précisée, c'est qu'il y a 3 types ( CRAPAUD, HEB 300 -1 et HEB 300 - 2) qui peuvent être sélectionnés, je souhaiterais avoir le msgbox erreur que quand le type crapaud et sélectionner ainsi que le nombre renseigner n'est pas modulo de 8.

  4. #4
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    J'ai essayé comme ceci

    Si saisie crapaud sans valeur

    message plus sélection de la cellule à saisir.

    bonne journée.

    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
    Option Explicit
    Dim LIGNE As Integer
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 11 And Range("K" & Target.Row).Value = "CRAPAUD" Then
             If Range("H" & Target.Row).Value = "" Then
            LIGNE = Target.Row
              MsgBox "ERREUR!!!! Le nombre doit étre saisi en premier"
              Cells(LIGNE, 8).Select
              Exit Sub
           End If
               If Range("H" & Target.Row).Value Mod 8 = 0 Then
                Else
                MsgBox "ERREUR!!!!" & vbCrLf & "Veuillez vérifier le nombre de crapaud....", vbCritical, "ERREUR!!!!"
                End If
            End If
     End Sub

  5. #5
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par demichoux Voir le message
    J'ai développé un outil de planif pour le boulot, j'aimerais que lorsque l'utilisateur renseigne 2 cellules, (1 avec le nombre et 1 avec le type) ,l'utilisateur renseigne en 1er la cellule avec nombre puis le type "CRAPAUD" il faut absolument que le nombre soit modulo de 8.
    A priori, pas besoin de VBA pour ça. Ca peut se gérer avec la validation de données.

    En supposant que tes cellules Nombre et Type soient respectivement A1 et B1.

    Sélectionne A1 > Ruban Données > Icone Validation de données > Validation de données > Autoriser = Personnaliser
    Dans le champ Formule, mets :
    > Ok

    Sélectionne B1 > même chemin que ci-dessus, mais comme formule, tu mets :
    Ce sera plus simple, plusrapide et plus fiable qu'une macro.

  6. #6
    Membre averti
    Inscrit en
    Février 2011
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 51
    Par défaut
    a_diard, je me suis inspiré de ton code, je te remercie beaucoup, je pense même l'utiliser entier pour améliorer mon outil.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    If Target.Column = 11 And Range("K" & Target.Row).Value = "CRAPAUD" Then
     
     
                If Range("H" & Target.Row).Value Mod 8 = 0 Then
     
                Else
     
                    MsgBox "ERREUR!!!!" & vbCrLf & "Veuillez vérifier le nombre de crapaud....", vbCritical, "ERREUR!!!!"
     
                End If
     
    End If
    Je suis désolé Menhir, je n'arrive pas du tout à voir comment cela fonctionne, tout en sachant que ma colonne "type" est une liste de validation de données.

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

Discussions similaires

  1. Msgbox et conditions
    Par balcap dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/11/2012, 10h37
  2. [E-01] Comment sauter une condition suite à une réponse de msgbox ?
    Par peofofo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 28/01/2009, 16h46
  3. Affichage d'un MSGBox à l'aide d'une condition
    Par toff7721 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/10/2008, 22h44
  4. Afficher une MsgBox selon une condition
    Par arkorrigan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 22/05/2008, 14h08
  5. [VBA-EXCEL]-condition pour ouvrir une msgbox
    Par captaine93 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/08/2006, 20h51

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