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

Choix couleur fond par userform

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

K

Katoch

Guest
Bonjour forum !

Je souhaiterais choisir la couleur de fond d'une cellule ,et lui affecter la valeur 1,en sélectionnant cette couleur parmi les 4 (Rouge,Vert,jaune ,bleu) qui seraient proposées par un UserForm apparaissant en cliquant sur cette cellule.

Voilà...merci de votre aide.
 
Re : Choix couleur fond par userform

Bonjour Katoch,

Tu crées un UserForm qui avec des OptionButton, qui ressemble à ceci :



Ensuite, en double cliquant sur un contrôle, tu rentres le code suivant :
VB:
Private Sub OptionButton1_Click()
    ActiveCell = 1
    ActiveCell.Interior.ColorIndex = 3
    Me.Hide
End Sub

Private Sub OptionButton2_Click()
    ActiveCell = 1
    ActiveCell.Interior.ColorIndex = 4
    Me.Hide
End Sub

Private Sub OptionButton3_Click()
    ActiveCell = 1
    ActiveCell.Interior.ColorIndex = 6
    Me.Hide
End Sub

Private Sub OptionButton4_Click()
    ActiveCell = 1
    ActiveCell.Interior.ColorIndex = 5
    Me.Hide
End Sub

Ensuite, dans le code de la feuille où tu veux avoir cette macro, tu colles ceci :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    UserForm1.Show
End Sub

Et voilà. Si tu veux remplacer un simple click par un double click, la macro devient :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    UserForm1.Show
End Sub

A+
 

Pièces jointes

  • Couleurs.jpg
    7.8 KB · Affichages: 172
  • Couleurs.jpg
    7.8 KB · Affichages: 161
Dernière édition:
Re : Choix couleur fond par userform

Bonjour Katoch, salut Fred0o, avec mes meilleurs voeux pour 2012 🙂

Construire un UserForm vous fatigue ? Moi aussi.

Alors cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If [D5] <> 1 Then
  [D5].Interior.ColorIndex = _
    Switch([D5] = "Rouge", 3, [D5] = "Vert", 4, [D5] = "Jaune", 6, [D5] = "Bleu", 8, True, xlNone)
  [D5] = 1
End If
End Sub
Fichier joint.

A+
 

Pièces jointes

Re : Choix couleur fond par userform

Salut Divers68,

Plutôt qu'une pseudo ComboBox (compliqué), autant utiliser une palette de couleur standard :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$D$5" Then
  Application.Dialogs(xlDialogPatterns).Show
  [D5] = 1
End If
End Sub
Fichier (2).

A+
 

Pièces jointes

- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…