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

XL 2016 Colorer l'intérieur d'une cellule sélectionnée

ReneDav14000

XLDnaute Occasionnel
Bonjour le forum,
Pourriez-vous me dire où dois-je insérer cette instruction dans le code ci-dessous s'il vous plaît ?
L'instruction est censée colorer en vert la cellule sélectionnée ensuite je dois ajouter une autre instruction pour annuler la couleur lorsqu'une autre cellule est sélectionnée.
Je vous en remercie par avance

Instruction :
VB:
Selection.Interior.Color = RGB(0,255,0) 'Vert'

Code où doit-être insérée cette instruction :
Code:
Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pos As Integer
Dim sem As String
    Application.ScreenUpdating = False
    
    If Target.Row = 5 Or Target.Row = 14 Then 'Ligne des mois
        Range("B24") = Target.Offset(0, -1).Value 'maj mois
        Range("B26").Value = Target.Offset(0, -1).Value 'début mois choisi
    End If
    
    If Target.CountLarge > 1 Then Exit Sub
    If Target.Row >= 7 And Target.Row <= 21 Then
        Range("B24") = Target.Value  'maj mois
        
        sem = CStr(Application.IsoWeekNum(Target.Value)) 'semaine
        
        Range("B26").Value = DateSerial(Year(Target.Value), Month(Target.Value), 1)  ' début mois choisi
        
        With Worksheets(sem)  'sélection feuille
            .Visible = True
            .Activate
            pos = 1 'sélection date
            While .Range("A2").Offset(0, pos).Value <> Target.Value
                pos = pos + 1
            Wend
            .Range("A2").Offset(0, pos).Activate 'position colonne
        End With
    End If
    Application.ScreenUpdating = True
End Sub
 

patricktoulon

XLDnaute Barbatruc
je
je ne sais pas si c'est a cause des version recente d'excel qui vous poussent a traivailler comme ça
mais purré qu'est que vous vous compliquez la vie

sérieux c'est de pire en pire
dans le calendrier ce sont des date (ou des num serie de date même si on ne vois que le jour )
purée de bon sang!!

je viens de tester
VB:
with sheets(WorksheetFunction.IsoWeekNum(target.Value))
.Visible = True
.activate
.cells.find(target.value).select
end with

terminé
 

ReneDav14000

XLDnaute Occasionnel
Bonjour Patrick, bonjour le forum,

Ton code remplace quoi ? Parce que là pour moi, c'est la brasse coulée...
Si on ne m'explique pas un minimum, je nage complètement.
Sinon, as-tu réussi à faire ton horloge ?
 

Discussions similaires

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