Macro et fonction si

Résolu
Bonjour,
j'aimerai compléter la macro ci-dessous en y incluant le fait que si on active cette macro sur une cellule et que la cellule de gauche est = à WE ou férié alors on obtient "" sinon "!". est ce possible, par avance merci de vos réponses.

Sub Effacer()
'
' Effacer Macro
' Macro enregistrée le 21/08/2013 par MSA
'
' Touche de raccourci du clavier: Ctrl+e
'
ActiveSheet.Unprotect Password:="mon mot de passe"
Selection.FormulaR1C1 = ""
With Selection.Interior
.ColorIndex = xlNoneColorIndex
.Pattern = xlSolid
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="mon mot de passe"

End Sub

4 réponses

  1. Bonjour
    tout d'abord, en haut du module, en première ligne avant le Sub
    ajouter Option compare text (pour ne pas de différence entre les majuscules et les minuscules.
    Puis inserez les lignes suivantes dans votre code
    if ActiveCell.offset(0,-1).value="WE" or ActiveCell.offset(0,-1).value="férié" then
        ActiveCell.value=""
    else:activecell.value="!"
    end if 

    bonne journée
    cdlt
    0
    1. merci, mais je suis vraiment novice en macro que dois-je indiquer en sub. et où exactement, qd j'ouvre vba, j'ai microsoft excel objets et modules lequel est le bon. Merci de ton aide
      Cdlt
      0
      1. Je suppose que vous avez du créer un bouton pour effacer le contenu da la cellule selectionnée après avoir déprotéger la feuille, et, ce que vous voulez ensuite, c'est de tester la cellule de gauche, qui en fonction de son contenu, fera afficher un ! ou rien dans la cellule active. Jusque là, est-ce que j'ai bien compris, si oui, alors, ouvrez le module dans lequel se trouve la macro "Effacer" et remplacer le tout par ceci:
        Sub Effacer() 
        '' Touche de raccourci du clavier: Ctrl+e
        ActiveSheet.Unprotect Password:="mon mot de passe" 
        if ActiveCell.offset(0,-1).value="WE" or ActiveCell.offset(0,-1).value="férié" then
            ActiveCell.value=""
        else:activecell.value="!"
        end if 
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="mon mot de passe" 
        End Sub 
        Si ce n'est pas ça ou si j'ai mal compris, déposez sur www.Cjoint.com votre fichier(sans données personnelles) et j'essaierai de vous le faire.
        mettez directement dans le fichier des commentaires sur les actions à réaliser.
        cdlt
        0
        1. Merci c'est tout à fait ça. il faut vraiment que je m'y mette au vbe.
          0