Ajouter flèches croissant ou décroissant sur un bouton

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 !

marcelio

XLDnaute Occasionnel
Bonjour le Forum,

J'ai un bouton qui à 2 fonctions,
un 1er clic qui est croissant et un 2ème clic décroissant.
Est il possible d'ajouter sur le bouton à coté de mon texte pour chaque tri la flèche montante ou descendante.
Mon code :
Dim Sens As Integer

With Me.CommandButton4
If .Caption = "CROISSANT" Then
.Caption = "DECROISSANT"
Sens = xlDescending
Else
.Caption = "CROISSANT"
Sens = xlAscending
End If
End With

Merci d'avance.
 
Re : Ajouter flèches croissant ou décroissant sur un bouton

bonjour,
en utilisant Chrw() avec le code d'un caractère unicode.

par exemple
Code:
With CommandButton4
If Left(.Caption, 1) = "C" Then
    .Caption = "DECROISSANT " & ChrW(&H25BC) '*** ou &H2193
    Sens = xlDescending
Else
    .Caption = "CROISSANT " & ChrW(&H25B2) '*** ou &H2191
    Sens = xlAscending
End If
End With
bonne suite
 
Re : Ajouter flèches croissant ou décroissant sur un bouton

Bonjour Paf,

Votre code fonctionne correctement,
mais j'ai un soucis car mes 2 noms sont les mêmes et le code ne fonctionne pas avec le même nom.
Exemple:
Janvier +
et Janvier -
J'espère que vous avez une solution à mon problème.

Et ou peut on trouver les codes d'un caractère unicode.
Merci de votre aide.
A+
 
Re : Ajouter flèches croissant ou décroissant sur un bouton

re

la solution est de tester le dernier caractère de Caption.

Code:
With CommandButton1
If Right(.Caption, 1) = ChrW(&H25B2) Then
    .Caption = "Janvier " & ChrW(&H25BC)
    Sens = xlDescending
Else
    .Caption = "Janvier " & ChrW(&H25B2)
    Sens = xlAscending
End If
End With

Quant aux codes des caractères Unicode, une recherche sur le Net...
 
Re : Ajouter flèches croissant ou décroissant sur un bouton

Re,
Merci pour ce nouveau code qui fonctionne correctement.
Mais j'aurais une petite question:
Quand je quitte la feuille et revient ensuite sur celle ci un point d'interrogation est à la place de la flèche mais qui disparais une fois qu'on clic sur le bouton.
Y à t'il une solution pour enlever ce point d’interrogation.
Merci
 
Re : Ajouter flèches croissant ou décroissant sur un bouton

Le code suivant CommandButton1.Caption = "Janvier " & ChrW(&H25BC)
est sensé modifier le Caption du bouton, mais quel que soit l'évènement (Sub Worksheet_Activate() ou Sub Workbook_Open() ou Sub Workbook_Activate()), le bouton affiche Janvier ?

je n'ai donc pas de solution pour ce type de bouton

la solution pourrait passer par l'utilisation d'un bouton "formulaire", puisqu'on peut utiliser les caractères spéciaux dans l'écriture de l'équivalent Caption; mais je ne maitrise pas l'utilisation de ce type de bouton en vba

j'essaie
 
- 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

Discussions similaires

  • Suggestion Suggestion
Recherche & référence DicoCountOrder
Réponses
0
Affichages
2 K
Réponses
8
Affichages
1 K
Réponses
1
Affichages
2 K
Retour