Choix de couleure dans une cellule sur clic

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 !

Cefiroth

XLDnaute Nouveau
Bonjour le forum,

J'ai un petit problème :
J'ai un tableau excel, j'aimerai que suite à un double clic la case devienne verte, sur un second clic dans la même case, la case devienne orange puis rouge.
Pour l'instant j'utilise le code suivant pour remplir la case uniquement en rouge :

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Not Application.Intersect(Target, [D8:AY43]) Is Nothing Then Target.Interior.ColorIndex = IIf(Target.Interior.ColorIndex = 3, xlNone, 3)
End Sub

Comment faire pour pouvoir avoir 3 couleurs différentes ?

(Ne peut-on pas simplement avoir une liste déroulante sut chaque cellule qui permette de choisir la couleure de la cellule ?)

Merci d'avance !

Cef
 
Dernière édition:
Re : Choix de couleure dans une cellule sur clic

Bonjour Cefiroth,
Une proposition:
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Not Application.Intersect(Target, [D8:AY43]) Is Nothing Then
    Select Case Target.Interior.ColorIndex
        Case xlNone
            Target.Interior.ColorIndex = 35
        Case 35
            Target.Interior.ColorIndex = 3
        Case 3
            Target.Interior.ColorIndex = xlNone
    End Select
End If
End Sub
Cordialement
 
Re : Choix de couleure dans une cellule sur clic

Bonjour Cefiroth, Bonjour Efgé 😉

Bon, je l'ai fait alors :

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim TabloCoul, Rang As Long
    Cancel = True
    TabloCoul = Array(xlNone, 43, 44, 3)
    If Not Application.Intersect(Target, [D8:AY43]) Is Nothing Then
        Rang = Application.Match(Target.Interior.ColorIndex, TabloCoul, 0) - 1
        If Rang = UBound(TabloCoul) Then Rang = -1
        Target.Interior.ColorIndex = TabloCoul(Rang + 1)
    End If
End Sub
 
Re : Choix de couleure dans une cellule sur clic

Re Cefiroth, Bonjour Tototiti 🙂,
J'ai retrouvé l'artillerie lourde.
Inutile de préciser que ce n'est pas de moi, j'y trouve même un coté "magique" assez inexplicable 😀.
Double click dans la zone...
Bonne lecture
Cordialement
 

Pièces jointes

Re : Choix de couleure dans une cellule sur clic

Bonsoir,

@Efgé : artillerie légère à essayer
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  If Application.Intersect(Target, [D8:AY43]) Is Nothing Then Exit Sub
  Application.Dialogs(xlDialogPatterns).Show
End Sub
sans rien d'autre !
 
- 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
4
Affichages
256
Réponses
3
Affichages
592
Retour