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 :

Problème avec validation par formule


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème avec validation par formule
    Bonjour,

    J'ai un petit problème de validation, et si quelqu'un pouvait m'aider ce serait bien sympatique.

    Je dois limiter les valeurs possibles d'une cellule à un numéro de sécurité sociale belge valable. Le problème est que cette cellule doit être positionnée par un utilisateur, je dois donc passer par une macro en vba. Je passe sur les détails du calcul de vérification, mais en gros la formule à entrer devrait ressembler à ça :

    97-mod(left(<la cellule>;9);97)-right(<la cellule>;2)=0

    ce qui donne dans ma macro

    "=(97-mod(left(<la cellule>,9),97)-right(<la cellule>,2)=0)"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    With Range("<la cellule>").Validation
        .Add Type:= xlValidateCustom, AlertStyle:= xlValidAlertStop, _
          Operator:=xlBetween, _
          Formula1:="=(97-mod(left(<la cellule>,9),97)-eight(<la cellule>,2)=0)", _
            Formula2:=""
        .InputTitle = "blabla"
        .ErrorTitle = "blabla"
        .InputMessage = "blabla"
        .ErrorMessage = "blabla"
    End With
    Ca ne fonctionne malheureusement pas, je reçois une erreur d'exécution 1004 : "erreur définie par l'application ou l'objet".

    Pourtant j'ai bien remplacé les ";" par des "," , les noms des formules sont en anglais,.. Je ne vois vraiment pas d'où peu provenir l'erreur, d'autant plus que si je fais la validation à la main ça fonctionne ... après qu'excel m'ait dit que formule était éronnée..

    Toute aide est la bienvenue! D'avance, merci!

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 147
    Points
    20 147
    Par défaut
    bonsoir

    Tu as écris eight au lieu de right :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Formula1:="=(97-mod(left(<la cellule>,9),97)-eight(<la cellule>,2)=0)",

    bonne soirée
    michel

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    c'était une faute de recopiage j'ai résolu le problème en mettant une valeur dans la cellule avant la validation, avec le code suivant ça fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Range("<la cellule>")=1
    With Range("<la cellule>").Validation
        .Add Type:= xlValidateCustom, AlertStyle:= xlValidAlertStop, _
          Operator:=xlBetween, _
          Formula1:="=(97-mod(left(<la cellule>,9),97)-right(<la cellule>,2)=0)", _
            Formula2:=""
        .InputTitle = "blabla"
        .ErrorTitle = "blabla"
        .InputMessage = "blabla"
        .ErrorMessage = "blabla"
    End With
    Range("<la cellule>")=""

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/02/2008, 11h56
  2. Problème avec validator.xml
    Par ahury dans le forum Struts 1
    Réponses: 2
    Dernier message: 19/12/2006, 17h38
  3. Problème avec validator-rules.xml
    Par steffy_29 dans le forum Struts 1
    Réponses: 1
    Dernier message: 08/12/2006, 10h51
  4. Problème avec vector par référence
    Par vdumont dans le forum SL & STL
    Réponses: 11
    Dernier message: 09/05/2006, 08h25
  5. Buotons radios avec validation par boite de dialogue
    Par alexbubs dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/10/2005, 18h21

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