Erreur d’exécution 1004

Bonjour,

Excel2016

J'ai un code VBA :

Private Sub Workbook_SheetDeactivate(ByVal sh As Object)

If sh.Name Like "##" Then

With sh

.Range("D3:P41").Sort key1:=.Range("D3"), order1:=xlAscending, Header:=xlNo

End With

End If

End Sub

Et chaque fois cela m'indique Erreur d’exécution 1004, cela me le fait chaque fois que je mets la protection des feuilles

La méthode Sort de la classe Range a échoué. Etant novice là dessus je voudrais savoir si quelqu'une ou quelqu'un puisse m'aider.

Merci

Salut,

Certaine fonctionnalité en VBA ne peuvent pas être utilisé si la feuille est protégée (les mêmes que si ont agit au clavier et à la souris).

Aussi, en utilisant l'enregistreur de macro j'ai obtenu ces lignes de codes (pour désactiver et activer la protection de la feuille) :

à mettre au début de ton code :

    ActiveSheet.Unprotect

à mettre à la fin :

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

Cependant, je ne connais pas tes configurations de protection de la feuille, je te conseil d'utiliser l'enregistreur de macro à ton tour.

Cdlt,

Bonjour,

Cela ne fonctionne pas, ça désactive la protection mais cela n'effectue pas le tri.

Merci

Re,

Bizarre parce que :

Ruffian19 a écrit :

cela me le fait chaque fois que je mets la protection des feuilles

Peut-tu joindre un fichier exemple à ta demande STP ?

Merci à toi !

Bonjour, voici le fichier. Merci

7essait.xlsm (50.19 Ko)

Re,

Tes données sont vides et ton tableau t'appartient il est difficile de me l'approprier.

Je te conseil de détailler ton problème dans ton prochain message comme ceci :

  • Ce que tu as ;
  • Ce que tu veux faire ;
  • Le résultat que tu veux obtenir.

Là, je ne parvient pas à savoir qu'elle colonne tu souhaite trier, ni dans quel but. Et, je me suis déjà aventuré à appliquer un Tri des données par VBA et je t'avoue que sa faisait bien planter mon fichier. Cela étant, détaille ta requête et quelqu'un volera à ton secours si je ne peu t'aider.

Cdlt,

Bonjour,

Voila je voudrais protéger les cellules en gris pour ne pas écrire dessus.

Les cellules où il y a "a" c'est pour noter ce qui est prélevé au jour le jour et celles en "p" c'est le pointage avec le décompte mensuel de la banque.

Il n'y a que les cellules date, débit, crédit en blanc et celle de "a" et "p" où je peux écrire.

Quand je rentre un débit ou un crédit, je mets la date et en cliquant par exemple sur le mois 2 et que je revienne sur le mois 1 cela à trier les cellules par date, mais quand je protège la feuilla cela n'effectue pas le tri.

Merci

Je t'envoie mon fichier avec un exemple.

Merci

12essait.xlsm (49.36 Ko)

Bonjour,

25 modules dont les 7 premiers vides, je me suis arrêté là et j'ai refermé.

Quelqu'un qui veut vraiment de l'aide fourni un truc propre, réduit au nécessaire, et n'attend pas qu'on lui sorte les vers du nez un par un pour expliquer en détail.

Définitivement pas pour moi ces demandes...

eric

Je comprends rien à tes modules, ils y ont toujours été et c'est tout. Salut

Bonsoir à tous,

eriiic a raison

Tu vas dans développeur, visual basic, et ouvre modules dans la colonne de gauche, tu en as 25 et plus de la moitié sont vides, alors tu supprimes un par un tous les modules vides.

Ca va mieux comme ca?

Bon courage quand même....

merci

Merci Patty, je vais en rester là.

Rechercher des sujets similaires à "erreur execution 1004"