Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Liste de choix...

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

WEIDER

XLDnaute Impliqué
Bonjour à tous,

Je suis bloqué sur mon fichier Excel car je n'arrive pas à finaliser ma 'Liste de choix', pourriez-vous m'aider s'il vous plaît ?
D'avance un grand merci et tout est expliqué dans mon fichier joint.

Encore merci pour votre aide !
 

Pièces jointes

Bonsoir WEIDER,

Ce que vous voulez faire n'est possible ni avec une liste de validation ni avec une ComboBox.

Dans le passé myDearFriend avait proposé une solution avec un contrôle WebBrowser mais sur Office 365 ça ne devrait pas fonctionner.

A+
 
Bonjour WEIDER, le forum,
Existe t'il une toute autre façon (automatique) d'avoir à peux près le même résultat ?
Si c'est juste le résultat qui compte utilisez cette macro :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, [J7:J37])
If Target Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each Target In Target 'si entrées multiples (copier-coller)
    Target.Font.Color = IIf(Target = "bas", vbRed, vbGreen)
    Target = IIf(Target = "bas", "ê", IIf(Target = "haut", "é", ""))
Next
Application.EnableEvents = True
End Sub
A+
 

Pièces jointes

Mille merci pour tous vos retour, j'ai le choix à présent !
Je crois que je vais opter pour ta solution Job75, juste le temps pour moi de me rappeler comment transposer ça à mon document....

Merci encore à tous !
 
Pour le fun une solution avec des Shapes :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim s As Shape, i As Byte
For Each s In Shapes
    If Not Intersect(s.TopLeftCell, [L7:L37]) Is Nothing Then s.Delete
Next
Set Target = Intersect(ActiveCell, [J7:J37])
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For i = 1 To 2
    [P7].Cells(i).CopyPicture
    Me.Paste
    With Selection
        .Left = ActiveCell(1, 3).Left
        .Top = ActiveCell(i, 3).Top
        .OnAction = Me.CodeName & ".Macro"
        .Name = IIf(i = 1, "é", "ê")
    End With
    ActiveCell.Activate
Next
End Sub

Sub Macro()
If Not IsError(Application.Caller) Then ActiveCell = Application.Caller
End Sub
Mais une liste de validation est quand même plus simple !

Edit : j'ai mis une MFC sur J7:J37.
 
Dernière édition:
- 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

Réponses
22
Affichages
313
Réponses
6
Affichages
162
Réponses
14
Affichages
169
Réponses
40
Affichages
1 K
Réponses
10
Affichages
334
Réponses
11
Affichages
247
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…