Excel - If Then Else

Résolu
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. Contributeur
    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. Merci beaucoup
      0
  2. 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
    1. 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
      1. 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
        1. Contributeur
          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
          1. Contributeur
            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