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 :

Message de saisie conditionnel


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut Message de saisie conditionnel
    Bonjour à tous,

    Je souhaite faire apparaître un message de saisie conditionnel sur une celllule.
    J'ai commencé ce code via l'enregistreur de maco mais y-a-t-il une autre solution ?
    En effet, en utilisant le pas à pas VBA ne reconnaît pas le code à partir de "With".


    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
        If mavariable Then
     
            With mavariable
     
            .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
            :=xlBetween
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = "mon titre"
            .ErrorTitle = ""
            .InputMessage = "Le texte"
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
     
            End With
     
        End If


    Merci de votre aide.

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,

    Qu'est-ce que "mavariable" ? elle est déclarée ou et comment ?

    Pourquoi ne pas se contenter de "MsgBox" ?
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    "mavariable" correspond au nom d'une cellule.
    Je ne veux pas utiliser de "MsgBox" pour raison esthétique en réalité.

    J'ai réussi à régler le problème de la non-lecture du "With". Mais j'ai un problème lorsque le code arrive à .Add, ce message apparaît : "Erreur d'exécution 438".

    Merci de votre aide

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    "mavariable" correspond au nom d'une cellule.
    Je te conseille, alors de publier tout ton ou tes code(s) relatif(s) à la demande
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Et voici :

    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
         If [rg_data_object] = "Cheval" Then
     
            With [rg_data_race]
     
                .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
                    :=xlBetween
                .IgnoreBlank = True
                .InCellDropdown = True
                .InputTitle = "titre"
                .ErrorTitle = ""
                .InputMessage = "texte"
                .ErrorMessage = ""
                .ShowInput = True
                .ShowError = True
     
            End With
     
        End If

  6. #6
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    mets-toi à ma place, que veux-tu que je comprenne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If [rg_data_object] = "Cheval" Then
     
    With [rg_data_race]
    je ne vais pas te tirer les verres du nez "rg_data_object", qu'est-ce que c'est, "rg_data_race" qu'est-ce que c'est ?, je ne suis pas devin, sans explications claires, il ne faut plus compter sur moi
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    [rg_data_object] & [rg_data_race] correspondent à 2 cellules différentes : D3 & D8 respectivement. ok pour toi ?

    Merci de ton aide

  8. #8
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    pas assez, ce sont des variables déclarées en Range ? exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim rg_data_race as Range
    ........
    set rg_data_race = Range("D8")
    ....
    With rg_data_race
    ....
    sinon, c'est normal que ça ne fonctionne pas
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Non ce sont des noms que j'ai donné à des cellules.
    Je ne les ai donc pas déclaré en Range ou autre.

    Thx

  10. #10
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Salut Casefayere

    Je pense que Renato essaie d'ajouter une validation à une cellule qui a un nom défini (niveau classeur?).

    Si c'est cela, le code devrait ressembler à
    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
    If [rg_data_object] = "Cheval" Then
     
        With ThisWorkbook.Names("rg_data_race").RefersToRange.Validation
            .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = "titre"
            .ErrorTitle = ""
            .InputMessage = "texte"
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
     
        End With
     
    End If
    Je n'ai pas testé.

    Cordialement,

    PGZ
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  11. #11
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour pgz,

    Heureusement que tu interviens, je ne comprenais pas la démarche et allais m'arracher les cheveux

    Bonne soirée
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    Je test vos conseils et vous revient d'ici peu.

    Merci

Discussions similaires

  1. [XL-2003] Changer apparence message de saisie
    Par iIncoming dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 27/05/2020, 16h05
  2. [AC-2003] Message sur saisie d'un sous-formulaire
    Par liop49 dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/10/2009, 14h02
  3. Formulaire de saisie conditionnelle
    Par jpdufren dans le forum Modélisation
    Réponses: 3
    Dernier message: 21/12/2008, 20h11
  4. masque de saisie conditionnel ?
    Par Canari74 dans le forum IHM
    Réponses: 4
    Dernier message: 08/06/2008, 01h44
  5. Réponses: 12
    Dernier message: 22/11/2006, 21h30

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