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 :

Couleurs.jpg

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
    Couleurs.jpg
    7.8 KB · Affichages: 172
  • Couleurs.jpg
    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

Retour