Microsoft 365 Code VBA "Tableau gestionnaire"

Rosario.

XLDnaute Junior
Bonjour, je viens vers vous car je ne comprend pas pourquoi mon code VBA que j'ai mis dans ThisWorkbook ne fonctionne pas. Pouvez vous m'aider svp. J'ai mis des commentaire dans mon fichier excel dans l'onglet "Sommaire" pour expliquer ce que je veux comme résultats.

Merci.
 

Pièces jointes

  • Gestionnaire.xlsm
    63.7 KB · Affichages: 7

Rosario.

XLDnaute Junior
Re,
Post modifié, j'avais oublié le "violet" !

Peut être plus simple avec juste un clic sur la cellule :
VB:
Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim F
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [C1:O2]) Is Nothing Then
        For Each F In Worksheets
            If F.Name <> Target And F.Name <> "Sommaire" Then
                Sheets(F.Name).Visible = xlSheetVeryHidden
            Else
                With Sheets(F.Name)
                    Application.EnableEvents = False
                    .Visible = True
                    .Select
                    .Range(Target.Address).Interior.Color = RGB(220, 140, 255)
                    .Range("A1").Select
                End With
                Sheets("Sommaire").Range(Target.Address).Interior.Color = xlNone
            End If
        Next F
    End If
    Application.EnableEvents = True
End Sub
A noter que la plage A..Z soit toujours au même endroit, donc j'ai modifié sa place dans Sommaire en C1:O2.
Bonsoir,
Je reviens vers vous concernant ce code VBA qui fonctionne parfaitement mais j'aimerai rajouté une ligne pour pouvoir avoir l'onglet sommaire et en plus l'onglet Récap. qui reste toujours affiché. Merci
 

Rosario.

XLDnaute Junior
Bonsoir,
De quelle PJ parlez vous ?
Je ne trouve pas de feuille Recap.
Bonsoir,
Je me suis trompé de dossier. En faite il s'agit du dernier tableau dont vous m'avez résolut le problème mais j'ai voulus rajouter un onglet qui ce nomme Récap. et j'aimerais qu'il reste visible tous comme l'onglet sommaire.

Voici le code que vous m'avez donné :

Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim F
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, [D3:AA3]) Is Nothing Then
For Each F In Worksheets
If F.Name <> Target And F.Name <> "Sommaire" Then
Sheets(F.Name).Visible = xlSheetVeryHidden
Else
With Sheets(F.Name)
Application.EnableEvents = False
.Visible = True
.Select
.Range(Target.Address).Interior.Color = RGB(246, 209, 236)
.Range("A1").Select
End With
Sheets("Sommaire").Range(Target.Address).Interior.Color = xlNone
End If
Next F
End If
Application.EnableEvents = True
End Sub

Merci pour votre aide.
 

Discussions similaires

Réponses
4
Affichages
443

Statistiques des forums

Discussions
315 093
Messages
2 116 125
Membres
112 666
dernier inscrit
Coco0505