Effacer contenu d'un tableau en VBA sur condition

Bonjour,

J'aimerais un petit coup de pouce pour améliorer ma méthode d'effacement de tableau,

Actuellement j'efface en VBA des plages précise de cellule mais je me rend compte que ce n'est plus adapté si j'agrandi celui-ci en nombres de lignes,

Voici mon code actuel :

Sub Raz()

Dim Raz As Byte

Raz = msgbox("Etes-vous certain de vouloir vider la feuille Data ?", vbYesNo + vbQuestion, "Effacer le contenu")

If Raz = vbYes Then

Worksheets("Data").Range("C8:C36").ClearContents

Worksheets("Data").Range("G8:G36").ClearContents

Worksheets("Data").Range("H8:H36").ClearContents

msgbox "Contenu effacé avec succès !", vbInformation, "Confirmation"

Else

Exit Sub

End If

End Sub

Ce que j'aimerais ce serait plutôt tester la cellule en B8 si = "mavaleur" alors.... on efface le contenu des cellules avoisinantes en C8, G8 et H8

Ainsi de suite pour test de C9......

Ainsi cela me permettrais d'effacer tout le contenu désiré sans avoir à mettre à jour mon code.

L'idéal serait de tester par exemple de B8 à B100 pour éviter d'alourdir de trop mon code.

J'ai essayé de mon coté mais il ne ce passe rien,

Cordialement,

Bonjour Parigoo, le forum,

A tester...

Sub Raz()
 Dim Raz As Byte, i%, dl%
  Application.ScreenUpdating = False
   Raz = MsgBox("Etes-vous certain de vouloir vider la feuille Data ?", vbYesNo + vbQuestion, "Effacer le contenu")
    If Raz = vbYes Then
     With Sheets("Data")
      dl = .UsedRange.Rows.Count
       For i = 8 To dl
        If .Range("B" & i) = "ma valeur" Then Union(.Range("C" & i), .Range("G" & i), .Range("H" & i)).ClearContents
       Next i
      MsgBox "Contenu effacé avec succès !", vbInformation, "Confirmation"
     End With
    End If
  Application.ScreenUpdating = True
End Sub

Cordialement,

C'est parfait ca fonctionne à merveille

Désolé pour mon erreur quand je dis "Ainsi de suite en C9" j'aurais du dire ainsi de suite en B9 mais ca ne vous à pas perturber apparemment,

un grand merci

Rechercher des sujets similaires à "effacer contenu tableau vba condition"