XL 2016 Supprimer contenu de deux autres cellules en fonction d'une cellule

babacool22

XLDnaute Nouveau
Bonjour le forum !

Je fais fasse à un problème tout bête que je n'arrive pas à résoudre. Dans mon tableur j'ai des dates dans la colonnes D et des infos en rapport à la colonne D dans les colonnes E et AJ.
Ce que j'aimerai c'est que lorsque je vide une cellule dans la colonne D6 cela vide automatiquement les informations contenues en E6 ainsi qu'en AJ6.
J'ai réussi à mettre ça au point mais seulement pour cette ligne...
J'aimerai l'appliquer à la colonne entière : lorsque l'on vide une cellule dans la colonne D les cellules sur la même ligne que la cellule précedemment vidée dans les colonnes E et AJ se vide également.
Auriez-vous une idée?
Voici le code utilisé:
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("D6")) Is Nothing Then
        Range("E6").ClearContents
        Range("AJ6").ClearContents
    End If
End Sub
Dans l'attente de vous lire,

Cordialement,
Babacool22
 

Deadpool_CC

XLDnaute Accro
Bonsoir,

sans fichier exemple ... j'ai tente cela :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("D" & Target.Row)) Is Nothing Then
        Range("E" & Target.Row).ClearContents
        Range("AJ" & Target.Row).ClearContents
    End If
End Sub
 

Deadpool_CC

XLDnaute Accro
Oupss ... petite correction ... on ne supprime que si plus rien dans la colonne D :


VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If (Not Intersect(Target, Range("D" & Target.Row)) Is Nothing) And (Range("D" & Target.Row) = "") Then
        Range("E" & Target.Row).ClearContents
        Range("AJ" & Target.Row).ClearContents
    End If
End Sub
 

Deadpool_CC

XLDnaute Accro
Salut @Lolote83,
Pas tout a fait ... là c'est simplement effacer deux cellules dans 2 colonnes différentes de la même ligne si on vide l'info en colonne D de cette ligne.
Mes tests avec les 6 lignes de codes du post #4 font le taff sur une feuille ou j'ai mis des données fictives.
on va attendre son retour avant d'engager + de temps sur cette question :)
 

Lolote83

XLDnaute Barbatruc
Re bonjour @Deadpool_CC ,
Si tu parcours bien le sujet du sujet indiqué au post#2, tu verras que la demande est exactement celle-ci.
C'est d'ailleurs ce que j'ai traité sur ce même fil au post#13 avec le fichier joint
Chose que tu peux retrouver ici su la validation du bouton VALIDER

VB:
Private Sub Cmd_Valider_Click()
    Dim xNewLig As Long
    If xMaintenance <> "TER" Then
        Range("AJ" & xLig) = xMaintenance
    Else
        With Sheets("Planning")
            xMachine = .Range("B" & xLig)
            xDateDeb = .Range("D" & xLig)
            xDateFin = .Range("F" & xLig)
            .Range("B" & xLig) = Empty
            .Range("D" & xLig) = Empty
            .Range("E" & xLig) = Empty
            .Range("AJ" & xLig) = Empty
        End With
        xNewLig = [Tab_Archive].ListObject.ListRows.Add.Index                        'On insere une nouvelle ligne au tableau structuré
        Range("Tab_Archive[Nom machine]")(xNewLig, 1) = xMachine
        Range("Tab_Archive[Début tâche]")(xNewLig, 1) = xDateDeb
        Range("Tab_Archive[Fin tâche]")(xNewLig, 1) = xDateFin
    End If
    Unload Me
End Sub
Mais comme tu le dis si bien
on va attendre son retour avant d'engager + de temps sur cette question
Je n'ai pas eu le temps de répondre (repas midi + réunion l'après midi) et peut être que notre ami @babacool22 était impatient d'avoir sa solution. mais je m'avance peut être un peu vite.
@Lolote83
 

babacool22

XLDnaute Nouveau
Bonjour @Lolote83 , @Deadpool_CC

Veuillez m'excusez j'étais fort malade ces 2 derniers jours d'où le fait que je ne puisse vous répondre...

J'ai ouvert ce deuxième poste avant d'avoir vu votre réponse au sujet de mon premier post. Je vais répondre qu'à cette partie dans ce message. Je vais essayer de combiner vos 2 codes afin que l'utilisateur du planning puisse en cas de mauvaise date rentrée effacer tout de même l'intégralité de la ligne en une seule action.

Je viens de tester ton code Deadpool_CC et ça marche du tonnerre !

Je vous remercie tout deux pour votre aide très précieuse.
Cordialement,
Babacool22
 

babacool22

XLDnaute Nouveau
Re-bonjour le fil,

J'ai réussi à combiner et à "m'approprier" vos deux codes. Il est maintenant donc possible pour l'utilisateur du tableur de terminée la maintenance via l'UserForm créer par @Lolote83 et également si pour X raisons il n'a pas à utiliser l'UserForm ( maintenance pas terminée, erreur de frappe, ect..) il pourra quand même supprimer toutes la ligne d'une seule action grâce au code de @Deadpool_CC.

Merci à vous deux pour votre aide ainsi que pour votre temps.
Je suis à l'écoute pour toutes proposition d'améliorations du projet globale ou d'optimisation des codes que vous m'avez très gentiment fournis.

Cordialement,
Babacool22
 

Discussions similaires

Statistiques des forums

Discussions
315 092
Messages
2 116 118
Membres
112 665
dernier inscrit
JPHD