Validation sous excel

Résolu
Pois -  
Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

Je cherche depuis longtemps et je n'y arrive pas... Et je suis sûre que ce n'est pas compliqué pour les experts.

Ce que je cherche à faire est:

Si le résultat d'une cellule (A3=A1+A2) est supérieur à 0, l'utilisateur doit entrer du texte dans A4.

Je pensais pouvoir y arriver par Validation des données\Personnalisée\formule mais tout ce que j'ai essayé (SI, ET, OU, etc.) ne fonctionne pas.

Votre aide est grandement appréciée.

Merci,

3 réponses

  1. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    =A3=A1+A2
    C'est tout ! pas de SI, ET, OU ; juste le signe = au début !
    0
  2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour

    Solution avec formule
    avec une mise conditionnelle
    formule
    =(A3>0)*(ESTTEXTE(A4))
    tu choisis le format de la cellule par ex rouge ou noir
    l'utilisateur est averti si la condition est réalisée

    Solution par fonction personnalisée (+ compliqué mais...)
    Auteur: Jacques Boisgontier
    http://boisgontierjacques.free.fr/
    dans la cellule B4 par ex
    =AfficheCmt(A4;(A3>0)*(ESTTEXTE(A4));"Texte interdit";2)
    fait apparaitre un commentaire "texte interdit" sur fond rouge qui disparait si la condition n'est pas réalisée
    le code
    Function AfficheCmt(cel, cond, msg, coul) 
      Application.Volatile 
      Set f = Sheets(Application.Caller.Parent.Name) 
      If Not cel.Comment Is Nothing Then cel.Comment.Delete 
      If cond Then 
        With cel 
          If .Comment Is Nothing Then .AddComment 
           .Comment.Shape.Width = Len(msg) * 6 
           .Comment.Shape.Height = 10 
           .Comment.Shape.Left = .Left + .Width + 5 
           .Comment.Shape.Top = .Top - 2 
           .Comment.Visible = True 
           .Comment.Text Text:=msg 
           .Comment.Shape.Fill.ForeColor.SchemeColor = coul 
         End With 
       End If 
       AfficheCmt = "" 
    End Function

    Si tu ne connais pas les macros, fais signe en indiquant ta version d'excel

    petite démo
    https://www.cjoint.com/?ALri7SXxSZF
    Michel
    0
  3. Nyctaclope Messages postés 5295 Date d'inscription   Statut Membre Dernière intervention   1 254
     
    Bonsoir

    Si la saisie est à la charge de l'utilisateur, Excel ne peut la faire à sa place, et ne peut que lui afficher un message d'avertissement , par exemple :

    en A5 :
    =SI(A3>0;"Il manque une donnée texte à gauche";"")

    La formule ci dessus suppose que A3 est bien numérique ..

    Par contre, si l'utilisateur a bien saisi son texte comme demandé, le message continue d'être affiché, puisqu'il ne tient compte que de la valeur en A3..
    Donc il faudrait que tu précise un peu mieux les réactions que tu souhaites de la part d'Excel ..

    A+
    Nyctaclope

    Le plus joli des poèmes de la mathématique : e^(i.PI)=i^2
    trois nombres "sacrés" d'horizons différents qui se donnent la main ...
    -2
    1. Nyctaclope Messages postés 5295 Date d'inscription   Statut Membre Dernière intervention   1 254
       
      Et comme je vais au dodo, et que j'ai peut être deviné ce que tu souhaiterais, essaye ceci :
      en A5
      =SI(ET(ESTNUM(A3);A3>0;NON(ESTTEXTE(A4)));"Il manque une saisie texte à gauche";"")
      A+
      Nyctaclope
      0
    2. Pois
       
      Merci Nyctaclope, ¸ ça donne le résultat escompté.

      J'aurais voulu obtenir l'alerte "cute" comme ce qu'on peut avoir avec "validation de données".

      Mais ça fera très bien l'affaire.

      Merci encore,
      0
    3. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      Pois, tu étais vraiment tout près de la solution, et je t'ai indiqué quoi faire pour que ça marche (post #2) : tu aurais bien fait d'essayer !
      0
    4. Nyctaclope Messages postés 5295 Date d'inscription   Statut Membre Dernière intervention   1 254
       
      Bonsoir Raymond !
      Sauf erreur de ma part, la formule que tu as proposée ne fait que vérifier que le calcul en A3 est bien exact, mais pas s'il est positif, et que dans ce cas une saisie de texte en A4 est peut être absente quoique nécessaire ... ce qui me semblait être la question posée ..
      Par contre la mise en forme conditionnelle de Michel_m me parait très élégante, et de loin préférable à la mienne, un peu simpliste ..
      Bonne suite à toi ..
      A+
      Nyctaclope
      0
    5. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      Oh, là , là ! Je suis confus : J'ai mal lu, et j'ai traduit "Si A3 est bien égal à la somme de A1 & A2", l'information A3=A1+A2 étant en l'occurrence superfétatoire ...
      Salut à vous tous.
      0