Excel - Macros ou formulle ?

Résolu/Fermé
sebi68 Messages postés 99 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 29 juin 2010 - 18 nov. 2008 à 17:05
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 19 nov. 2008 à 11:09
Bonjour,

Sous Excel j'ai 2 colonnes pouvant être complètée par une "X", je souhaite automatisé que si je mets "X" dans la seconde la "X" figuant dans la 1ère est éffacée. En fait il ne doit pas y avoir de "X" dans les 2 colonnes, ceci sur plusieurs ligne ...
les 2 cellules à complètées sont cote à cote, je sais pas si je suis assé clair ...

Je pensais utilisé 3 cellule adjacantes, y mettre la valeur 1 si la cellule à une "X" faire une somme et que si la somme est égale à 2 exécuter une macros éfassant la première "X", mais pas évident ...

X X 1 1 2 (si=2 effacer la 1ere "x")

Si quelqu'un a une idée ???? merci !!!!!


Bonne soirée
A voir également:

10 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
18 nov. 2008 à 17:51
Bonsoir,

en supposant que dans ces 2 colonnes, il s'agisse de saisies et non de résultats de formules
A mon avis on est obligé de passer par une macro

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lig As Long
Static flag As Boolean

If Intersect(Target, Columns("A:B")) Is Nothing Then: Exit Sub
If flag Then
flag = False
Exit Sub
End If

' 1 correspond à col A, 2 à colB
lig = Target.Row
If Application.CountIf(Range(Cells(lig, 1), Cells(lig, 2)), "X") = 2 Then
    flag = True
   
    If Target.Column = 2 Then
        Target.Offset(0, -1).ClearContents
    Else
        Target.Offset(0, 1).ClearContents
    End If
End If
End Sub


réalisé pour colonne A et B

macro à installer dans un module feuille ( copier,clic droit sur l'onglet, visualiser le code- coller)
0
sebi68 Messages postés 99 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 29 juin 2010 3
19 nov. 2008 à 08:30
Bonjour,

Merci de votre aide !

J'ai créé une macro que j'ai appelé "efface" puis je l'ai exécuté :

J'ai un message d'Erreur d'éxécution '424' objet requis

la lige concernée :

If Intersect(Target, Columns("A:B")) Is Nothing Then:

Merci !!!

bonne journée
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2008 à 09:13
Bonjour,

remplace columns("A:B")

par range("A1:B50000")

mais c'est curieux, je viens de réessayer, ca marche chez moi! (XL2003)

merci de me tenir au courant du résultat
0
sebi68 Messages postés 99 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 29 juin 2010 3
19 nov. 2008 à 09:22
même message d'erreur

je suis sous Excel 2002 ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2008 à 09:48
as tu bien coller la macro dans un module "feuille" et non dans module1 ?
0
sebi68 Messages postés 99 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 29 juin 2010 3
19 nov. 2008 à 09:53
c'est peut-être là le soucis... oui

Qu'appelles tu le module "feuille" ? stp

Ce que j'ai fais sur ma feuille excel j'ai créé une macro (nomée éfface) puis je l'ai exécuté ...

je vois pas trop la diff entre module feuille et moudule 1 ... excuse moi

a+ , merci
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2008 à 10:09
Relis le post que je t'avais envoyé au départ !!!

macro à installer dans un module feuille ( copier,clic droit sur l'onglet, visualiser le code- coller)

tu copies l'ensemble de la macro de private ..... end sub
il faut surtout la renommer!!!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2008 à 10:13
0
sebi68 Messages postés 99 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 29 juin 2010 3
19 nov. 2008 à 10:15
OK , c'est bon !!!!!

Ca marche impeccable

Merci !!!!

Je peux te payer un café ? ....

a+, bonne journée
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2008 à 11:09
Long, non sucré STP ;-)

Merci de cocher "résolu"
0