Excel - If Then Else

Résolu
Ludozebest -  
ROYA2 Messages postés 369 Statut Membre -
Bonjour,

Je souhaite créer une macro excel avec les fonctions if then else.

Ce que je souhaite c'est :

SI (If) : Somme (A1:A10) > 20
ALORS (Then) : MsgBox "Message 1"
SINON (Else) : MsgBox "Message 2"

Merci pour votre aide,

LD
Configuration: Windows XP

6 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Je suppose que c'est la syntaxe que tu cherches, alors ainsi cela fonctionne :
    If Application.WorksheetFunction.Sum(ActiveSheet.[A1:A10]) > 20 Then
        MsgBox "Message 1"
    Else
        MsgBox "Message 2"
    End If
    9
    1. Ludozebest
       
      Merci beaucoup
      0
  2. ROYA2 Messages postés 369 Statut Membre 77
     
    Merci pour vos réponse, mais en fait ce que j'avais écrit dans le post numéro 4 fcontionne...

    Tant que ca fonctionne...je ne simplifie pas...

    A+
    3
  3. ROYA2 Messages postés 369 Statut Membre 77
     
    Bonjour j'ai une autre question du même type sauf que moi c'est :

    Sub Calculer()
    '
    ' Calculer Macro
    ' Macro enregistrée le 25/04/2009 par Moi
    '
    
    '
    
    Si (If) : La valeur de la cellule C11 est supérieur ou égale à 3
     
    Else 
    
    Range("H11").Select
    ActiveCell.FormulaR1C1 = "Mon message 1"
    Range("H12").Select
    ActiveCell.FormulaR1C1 = "Mon message 2"
         
    Else
         Range("H11").Select
         ActiveCell.FormulaR1C1 = "Mon message 3"
         Range("H12").Select
         ActiveCell.FormulaR1C1 = "=C12/(C11*C11)"
         
         End If
         
         
         
         
    End Sub
    2
  4. ROYA2 Messages postés 369 Statut Membre 77
     
    lol, je suis bête^^

    Il suffisait de remplacer :

    If Application.WorksheetFunction.Sum(ActiveSheet.[A1:A10]) > 20 Then
    (Reponse de Gbinforme)

    par

    If Application.WorksheetFunction.Sum(ActiveSheet.[C11]) > 3 Then
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. wilfried_42 Messages postés 912 Statut Contributeur 245
     
    Bonjour

    en fonction de ce que j'ai compris
    Sub Calculer()
         if range("C11")>3 then
                 Range("H11") = "Mon message 1"
                 Range("H12") = "Mon message 2"
         Else
                 Range("H11") = "Mon message 3"
                 Range("H12").Formula = "=C12/(C11*C11)"     
         End if
    End Sub
    0
  7. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Tu dois pouvoir modifier ainsi car tu n'as pas besoin des "select" rajoutés par l'enregistreur.
    Sub Calculer()
    If Range("C11").Value >= 3 Then
        Range("H11").FormulaR1C1 = "formule 1"
        Range("H12").FormulaR1C1 = "formule 2"
    Else
         Range("H11").FormulaR1C1 = "formule 3"
         Range("H12").FormulaR1C1 = "=C12/(C11*C11)"
    End If
    End Sub
    

    edit :
    Trop tard et bonjour à Wilfried...
    0