Macro supprimer toutes les données validation du classeur

Bonjour à toutes et tous,

Je cherche à créer une macro pour supprimer toutes les validations (données, validation) de toutes les feuilles d'un classeur.

Le classeur pouvant contenir un nombre variable de feuille et toutes sortes de validations de données (liste, nombre, date, etc...) sur 1 ou plusieurs cellules.

J'ai écrit une amorce de code mais qui ne fonctionne pas comme souhaité. cf classeur joint.

Pourriez vous m'aider à finaliser ma macro ?

Merci

Cordialement

Hugues

Sub DELVALIDATION()
'supprimer toutes les listes de validation de toutes les feuilles du classeur actif
Dim sh As Sheets
    On Error Resume Next
    For Each sh In ActiveWorkbook
        ActiveCell.SpecialCells(xlCellTypeAllValidation).Delete
    Next sh

End Sub
78validation.xlsm (31.34 Ko)

Bonjour,

Peut-être comme ceci :

Sub DELVALIDATION()
'supprimer toutes les listes de validation de toutes les feuilles du classeur actif
Dim Sh As Worksheet
Dim Rng As Range

On Error Resume Next
For Each Sh In ActiveWorkbook.Sheets
   Set Rng = Sh.UsedRange
      For Each Cell In Rng
         Cell.SpecialCells(xlCellTypeAllValidation).Delete
      Next Cell
Next Sh
End Sub

Gelinotte

Bonjour Gelinotte

Merci pour ta réponse rapide qui fonctionne.

Mais pourquoi est ce qu'une partie des données de la liste sont déplacées de la colonne B vers colonne A (B2, B3 vers A2, A3) dans mon classeur exemple avec ton code ?

Merci

Cordialement

Hugues

Bonjour,

Parce que j'ai corrigé la boucle, pas l'action.

La ligne : Cell.SpecialCells(xlCellTypeAllValidation).Delete,

devrait être : Cell.SpecialCells(xlCellTypeAllValidation).Clear

Gelinotte

Bonsoir Gelinotte,

Merci beaucoup tes conseils m'ont permis de créer le code qui correspond à 100% de mes attentes

Cordialement

Hugues

Rechercher des sujets similaires à "macro supprimer toutes donnees validation classeur"