Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 effacer le contenu de certaines cellules sous condition

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Cassolette

XLDnaute Nouveau
Bonjour,
je souhaiterais effacer les cellules D, E, F, de toutes les lignes pour lesquelles la valeur de la cellule B est "pas démarré".
Mon classeur comportera plusieurs feuilles du même modèle.
par avance.
Cassolette
 
Bonjour à tous ,
c'est vrai que sans exemple précis,
la réponse ne peut être que généraliste :
VB:
    Dim Rangée As Range
    For Each Rangée In [2:3].Rows ' <-- les lignes concernée
        If Rangée.Columns("B") = "pas démarré" Then Rangée.Columns("D:F").ClearContents
    Next
 
Bonjour Cassolette, Hasco, fanch55,

Pas besoin de fichier, cette macro fonctionne dans tous les cas de figure (formules ou pas) :
VB:
Sub Effacer_DEF()
Dim w As Worksheet, tablo, ref, i&
For Each w In Worksheets
    With w.Range("A1", w.UsedRange).Resize(, 6)
        tablo = .Formula 'matrice, plus rapide
        ref = .Columns(2).Resize(, 2) 'au moins 2 éléments
        For i = 1 To UBound(tablo)
            If LCase(CStr(ref(i, 1))) = "pas démarré" Then _
                tablo(i, 4) = "": tablo(i, 5) = "": tablo(i, 6) = ""
        Next i
        .Formula = tablo 'restitution
    End With
Next w
End Sub
Utilisant des tableaux VBA elle est très rapide.

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…