Macro et fonction si

Résolu/Fermé
ec163 - 21 août 2013 à 16:24
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 - 22 août 2013 à 14:02
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


A voir également:

4 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 août 2013 à 13:08
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
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 32
22 août 2013 à 13:30
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
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
22 août 2013 à 13:52
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
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 32
22 août 2013 à 14:02
Merci c'est tout à fait ça. il faut vraiment que je m'y mette au vbe.
0