XL 2016 Suppression contenu d'une plage de cellules en fonction de leur valeur

  • Initiateur de la discussion Initiateur de la discussion achaime
  • Date de début Date de début

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 !

achaime

XLDnaute Nouveau
Bonjour.
J'ai une question sur la manière de procéder pour sélectionner une plage, de B5 à BD19 comme dans le fichier joint, et lancer une macro d'effacement de leur contenu seulement si au moins une de ces cellules contient une autre valeur que 1.
Et si c'est possible, qu'au lancement de la procédure, si toutes les cellules ne contiennent que la valeur 1, qu'un message indique qu'il n'y a rien à supprimer et sortir alors de la procédure.

Merci pour votre aide.

Je cherche depuis des jours et j'ai essayé des tas de choses et je coince.
 

Pièces jointes

Bonjour achaime (sur XLD) et marcache (sur XLP)🙂,

Il est malvenu de poster la même question sur différents forum.

Lire le point suivant de la charte de XLD:
2.10 - Évitez de poser votre question sur plusieurs forums sur Internet, cette pratique s'appelle "cross posting" et elle peut être mal perçue par les membres répondant aux questions. Si vous avez déjà posté votre question ailleurs, que nous n'avez pas de réponse satisfaisante et que vous voulez la reposter sur XLD, il est possible de supprimer votre discussion sur l'autre forum.

Cela fonctionne aussi dans l'autre sens si vous souhaitez poser votre question ailleurs.

et aussi ce point de la charte de XLP:
Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).
😉
 
Bonjour.
J'ai une question sur la manière de procéder pour sélectionner une plage, de B5 à BD19 comme dans le fichier joint, et lancer une macro d'effacement de leur contenu seulement si au moins une de ces cellules contient une autre valeur que 1.
Et si c'est possible, qu'au lancement de la procédure, si toutes les cellules ne contiennent que la valeur 1, qu'un message indique qu'il n'y a rien à supprimer et sortir alors de la procédure.

Merci pour votre aide.

Je cherche depuis des jours et j'ai essayé des tas de choses et je coince.
VB:
Option Explicit

Sub EffacerSiPas1()
Dim rng As Range
Dim Cel
Set rng = Range("B5").CurrentRegion
For Each Cel In rng
    If Not IsNumeric(Cel.Value) Then
        Stop
        Cel.EntireRow.ClearContents
    End If
Next
End Sub
 ' attention s'il y a des autres datas sur la droite du tableau  !!!

Edit: pas vu pour la question sur autre forum 🙁
 
Dernière édition:
Bonjour,

J'ai une question sur la manière de procéder pour sélectionner une plage, de B5 à BD19 comme dans le fichier joint, et lancer une macro d'effacement de leur contenu seulement si au moins une de ces cellules contient une autre valeur que 1.
Et si c'est possible, qu'au lancement de la procédure, si toutes les cellules ne contiennent que la valeur 1, qu'un message indique qu'il n'y a rien à supprimer et sortir alors de la procédure.

Proposition pour ce qui est demandé :
VB:
Sub test_1()
Dim MaPlage As Range, NbCel As Long
    Set MaPlage = Range("B5:BD19")
    NbCel = Application.CountIf(MaPlage, "<>1")
    If NbCel = 0 Then
        MsgBox "Il n'y a rien à supprimer !"
    Else
        MaPlage.ClearContents
    End If
End Sub

Proposition pour ce qui est peut-être désiré vu le nom du fichier fourni "EFFACEMENT SI VALEUR AUTRE QUE 1" :
VB:
Sub test_2()
Dim MaPlage As Range, Cel As Range, NbCel As Long
    Set MaPlage = Range("B5:BD19")
    NbCel = Application.CountIf(MaPlage, "<>1")
    If NbCel = 0 Then
        MsgBox "Il n'y a rien à supprimer !"
    Else
        For Each Cel In MaPlage
            If Cel <> 1 Then Cel.ClearContents
        Next Cel
    End If
End Sub
 

Pièces jointes

Dernière édition:
- 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

Retour