Bonjour NadegeEP
Tout dépend si tu as plusieurs classeurs ouverts
Attention, La collection WorkSheets appartient au classeur actif
Si dans la macro on utilise la notion de parent alors il n'y a peut-être pas d'erreur.
Le parent de WorkSheets peut être Workbook(nom_du_classeur) ou ThisWorkbook ou ActiveWorkbook
J'opterais en réutilisant le code de Joco
Sub test()
if MsgBox("voulez-vous effacer les données K15:K42 dans " & ThisWorkBook.Path & "\" & ThisWorkbook.Name, vbOKCancel) = vbOK Then
For x = 1 To ThisWorkbook.Worksheets.Count
ThisWorkBook.Worksheets(x).Range("K15:K42").ClearContents
Next x
End if
End Sub
pour mettre