Bouton personnalisé.

  • Initiateur de la discussion Initiateur de la discussion Eowiin
  • 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 !

E

Eowiin

Guest
Bonjour,

J'ai un fichier excel qui contient a peut prés 5000 lignes et que je souhaiterais trié via ma colonne1 avant chaque enregistrement puis enregistrer ce classeur. La maccro fonctionne parfaitement, je l'ai associé a un bouton dans la barre d'outil.
Mon problème maintenant est que, je souhaiterais que mes collaborateurs aient aussi ce bouton dans leur barre d'outil de façon a ce que le fichier soit toujours trier puis sauvegarder. Et si possible que le bouton soit associé uniquement a ce classeur.

Merci d'avance
 
Re : Bouton personnalisé.

Bonjour,

Question ... Pourquoi ne pas simplement mettre un appel à ta procédure dans l'évènement "ThisWorkbook_BeforeSave" ?

Ainsi, à chaque fois qu'un utilisateur du classeur l'enregistre, ton code VBA s'exécutera systématiquement avant, et c'est transparent pour l'utilisateur.

Après ... Pour que tous les utilisateurs d'un réseau ait ce système, il faut qu'ils utilisent le même classeur/une copie du même classeur, dans lequel/laquelle il y a ce code dans le BeforeSave.

Enfin, à priori, tant que tu travailles sur un classeur, il n'y a que le classeur qui dispose du code.
Si tu travailles sur un modèle en revanche, tu risques de modifier le comportement d'Excel par défaut quand tu n'ouvres pas tes classeurs métiers. Donc attention sur ce point précis, mais tu sembles travailler sur un classeur, donc pas de problème.

Cordialement,
 
Re : Bouton personnalisé.

Re, Bonjour gilbert_RGI

@gilbert: faut croire que non, je viens d'essayer "Désolé, aucun résultat ne correspond à votre recherche".

@Eowin: du coup, t'embêtes pas pour le code de tri. Tu vas dans le Menu "Outils" ==> "Macro" ==> "Nouvelle macro"

Là, tu rentres les paramètres, puis tu fais ton action (ton tri sur la colonne), et tu stoppes l'enregistrement de la macro.
Ca te donne un code tout fait pour gérer ton tri.

Si ce code de tri ne suffit pas (l'enregistrement de macro aide, mais ça fait pas tout), reviens ici, on t'aiderai à adapter le code généré.

Cordialement,
 
Re : Bouton personnalisé.

Merci pour votre aide, j'ai trouvé cette solution :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Range("A2:BI5000").Sort Key1:=Range("A1"), Order1:=xlAscending

End Sub

Encore merci
 
Re : Bouton personnalisé.

Re,

Euh ... Oui et non, ça marchera mais pas complètement.

Ton code est sur le classeur, pas sur la feuille, donc il faut que tu rajoutes le référencement de ta feuille.

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    If ActiveSheet.Name <> "MonNomDeFeuilleATrier" Then
        Worksheets("MonNomDeFeuilleATrier").Activate
    End If
    Worksheets("MonNomDeFeuilleATrier").Range("A2:BI5000").Sort Key1:=Range("A1"), Order1:=xlAscending

End Sub

En remplaçant "MonNomDeFeuilleATrier" par le nom de ta feuille à trier.
Et là, ça marchera à chaque fois.

Ton code présente le problème que si tu n'es pas sur ta feuille à trier, à l'enregistrement du classeur, il va trier oui, mais il va trier ta feuille active (qui n'est pas forcément la feuille que tu veux/dois trier).

C'est une sécurité en plus 🙂

Cordialement,
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
884
T
  • Résolu(e)
Microsoft 365 pb effacement macro
Réponses
8
Affichages
795
Themax
T
Réponses
3
Affichages
430
  • Question Question
Microsoft 365 aide userform
Réponses
11
Affichages
962
Retour