création d'un bouton pour un onglet masqué

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 !

tagadangel31

XLDnaute Nouveau
bonjour,
voila j'ai créer un dossier Excel qui contient énormément de feuilles, c'est pourquoi je voudrais masquer certains feuilles et créer un bouton dans la page principale afin d'ouvrir la feuille masqué. Et un bouton sur cette feuille qui servirait à la fermer et atterrir à la page principale.
Je m'explique:
la page principale s'appelle "Juillet 2014". Sur cette feuille je souhaite créer un bouton qui renvoie à la feuille nommée "Youssef" qui est masquée. Je me doute donc que cette feuille se réaffichera du coup il me faudrait un autre bouton sur cette dernière qui ferme cette feuille et qui nous renvoie automatiquement à la feuille "Juillet 2014"
Merci beaucoup pour votre aide et pour m'avoir lu 😱
et pour votre réponse ^^

Angélique
 
Re : création d'un bouton pour un onglet masqué

Bonjour Angélique le forum
pas de problème pour t'aider mais STP fais nous un petit fichier exemple et tu mets dedans ce que tu souhaites obtenir et on te fera les macros qui vont bien
a+
Papou😱
 
Re : création d'un bouton pour un onglet masqué

Re tagadange le forum
oui tu passes ton fichier s'il n'y a pas de données confidentielles, autrement tu copies ton fichier et tu retires les données confidentielles et tu expliques dans le fichier ce que tu veux obtenir, et tu joins le fichier au post, et on va te faire cela
pour joindre le fichier tu cliques sur aller en mode avancé en bas à droite et tu cliques ensuite sur le trombone et là tu choisis ton fichier et voilà
a+
Papou😱
 
Dernière édition:
Re : création d'un bouton pour un onglet masqué

Bonjour, et merci pour ta réponse!! juste une petite précision, qu'entend tu par: 'pour alimenter la liste avec les noms et 'va vers la feuille et l'affiche .
Désolée pour toute ces questions, mais je suis encore un peu novice dans le monde des macros ^^


"Option Explicit
Private Sub UserForm_Initialize()
Dim I As Byte
For I = 2 To Sheets.Count 'pour alimenter la liste avec les noms
If Sheets(I).Visible = 0 Then ListBox1.AddItem Sheets(I).Name' des feuilles cachées
Next
End Sub
Private Sub ListBox1_Click() 'va vers la feuille et l'affiche
With Sheets(CStr(ListBox1))
.Visible = True
.Activate
End With
Unload Me
End Sub"
 
Re : création d'un bouton pour un onglet masqué

voila donc je vous ai mis mon fichier.
Le principe étant de récapituler les heures de chaque salariés sur chaque chantier sur la feuille "juillet 2014"(ma feuille principale. Dans cette feuille a la place de "salarié 1", "salarié 2", etc je veux des bouton qui pertte d'aller à leur fiche perso qui est sous forme de feuille masqué. une fois dessus, je veux pour cliquer sur un bouton pour remasquer cette feuille et retourner à "juillet 2014". et faire la même chose pour chaque client. ce serait vraiment le must du must ^^.
Merci grandement pour votre aide!
 
Re : création d'un bouton pour un onglet masqué

Bonjour à tous.


voila le fichier en question
Un essai avec ce code placé dans la feuille de code de l'objet ThisWorkbook.​
VB:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Feuille As Object, ByVal Cible As Range, Contremander As Boolean)
Dim c&, f&, errNb, Cbl, page_Principale$, Cel As Range
'
  page_Principale = "JUILLET 2014" 'À adapter le cas échéant.
'
  Cbl = Array([Salarie_n], [Client_n]) 'À adapter selon les besoins :
  'Plages de référence aux onglets à afficher/masquer.
  'À condition qu'il existe un onglet nommé "JUILLET 2014", on aurait pu écrire :
'
'  With Worksheets(page_Principale): Cbl = Array(.Range("$J$2:$R$2"), .Range("$B$3:$B$7"), .Range("$B$10:$B$15")): End With

  On Error Resume Next
  page_Principale = Worksheets(page_Principale).Name: errNb = Err.Number
  On Error GoTo 0
  If Feuille.Name = page_Principale Then
    For c = UBound(Cbl) To 0 Step -1
      If Not Intersect(Cible(1), Cbl(c)) Is Nothing Then Exit For
    Next
    If c > -1 Then
      Contremander = True
      On Error Resume Next
      Sheets(Cible.Value).Visible = -1
      If Err.Number Then
        MsgBox "Il n'existe pas d'onglet nommé """ & Cible.Value & """ !"
      Else
        Sheets(Cible.Value).Activate
      End If
      On Error GoTo 0
    End If
  Else
    If Not Intersect(Cible, Feuille.[A1]) Is Nothing Then
      For c = UBound(Cbl) To 0 Step -1
        For f = Cbl(c).Count To 1 Step -1
          If Feuille.Name = Cbl(c)(f).Value Then Exit For
        Next
        If f > 0 Then
          Contremander = True
          If errNb Then
            MsgBox "Il n'existe pas d'onglet """ & page_Principale & """ !"
          Else
            Worksheets(page_Principale).Activate
            Feuille.Visible = 0
          End If
          Exit For
        End If
      Next
    End If
  End If
End Sub
Mode d'emploi :


  • Dans l'onglet "JUILLET 2014", double cliquer sur un nom de salarié (ligne 2) ou de client (colonne B) affiche l'onglet de même nom s'il existe.

  • Dans un onglet affiché par la méthode susdite, double-cliquer sur la cellule A1 affiche l'onglet "JUILLET 2014" s'il existe, et le cas échéant, cache l'onglet qu'on vient de quitter.

Le code est commenté dans le classeur joint.


Bonne journée.


ℝOGER2327
#7469


Vendredi 20 Gidouille 141 (Saint Périnée, zélateur - fête Suprême Quarte)
16 Messidor An CCXXII, 0,4125h - tabac
2014-W27-5T00:59:24Z
 

Pièces jointes

Re : création d'un bouton pour un onglet masqué

Salut

qu'entends tu par: 'pour alimenter la liste avec les noms et 'va vers la feuille et l'affiche .
Désolée pour toute ces questions, mais je suis encore un peu novice dans le monde des macros ^^

Ce sont deux commentaires pour expliquer un peu les actions. Ils peuvent être utiles mieux comprendre la démarche.

Avec ton fichier, il n'est pas utile de passer par le formulaire (UserForm); tu peux te déplacer par doubles clics sur des cellules précises comme le fait d'ailleurs ROGER2327 mais de façon plus générale (avec des gardes-fous)😉.

Dans le Module de la feuille JUILLET 2014 (Alt F11) - afficher et sélectionner quand double clic sur une cellule commençant par cl.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal R As Range, Cancel As Boolean)
  If R Like "cl*" Then
    Sheets(R.Text).Visible = 1 'affichage de l'onglet masqué qui a pour nom le contenu de la cellule choisie
    Me.Visible = 0		        'masquage de cette feuille  active
    Sheets(R.Text).Select	'sélection de l'onglet qui a pour nom le contenu de la cellule choisie	    
  End If
End Sub
Dans ThisWorkbook -retour quand double clic sur A1 contenant •.
Code:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal R As Range, Cancel As Boolean)
  If R = "•" Then Sheets("JUILLET 2014").Visible = 1: Sh.Visible = 0  'affichage  et masquage
End Sub
 

Pièces jointes

Re : création d'un bouton pour un onglet masqué

bonjour à tous!
bon ben comme je suis pas à un aussi haut niveau que vous à excel ben je n'y arrive pas, et ne comprend pas tout à ces codes sachant que c'est la première fois que je m'y frotte.
j'ai donc tout bien fait comme le dernier message de Si... je crée la macro et voila ce qui apparait :
Sub menu()

End Sub

que dois je écrire? et puis ton code (Si...) est fait pour aller sur juillet 2014?
Encore désolé pour ma nullité ^^
mais merci à vous de prendre le temps !! 😱
 
Re : création d'un bouton pour un onglet masqué

j'ai une idée
voila alors le premier salarié s'appelle youssef
dans la feuille juillet 2014, je crée un bouton contrôle active X via l'onglet développeur de excel. Je le nomme youssef et j'écrie dessus youssef. ensuite en parallèle j'ai crée une feuille appelé youssef. a partir de la, quelle manip dois-je faire pour quand je clique dessus j'ouvre un onglet masqué. Si vous pouviez détailler les actions que je dois faire s'il vous plaît 😱?
ensuite la feuille "youssef" apparait. de la même manière j'insère un bouton avec le logo de l'entreprise qui permettra de revenir à la feuille "juillet 2014". quelle est la manière de procéder afin d'arriver à ca?

Si vous pouvez tout bien détailler ce ne serait pas de refus. Je suis désolé d'abuser de votre aide :/
Merci beaucoup en tout cas de prendre le temps de me répondre et de m'aider!

Angélique
 
Re : création d'un bouton pour un onglet masqué

salut

bonjour à tous!
bon ben comme je suis pas à un aussi haut niveau que vous à excel ben je n'y arrive pas, et ne comprend pas tout à ces codes sachant que c'est la première fois que je m'y frotte.
j'ai donc tout bien fait comme le dernier message de Si... je crée la macro et voila ce qui apparait :
Sub menu()

End Sub


que dois je écrire? et puis ton code (Si...) est fait pour aller sur juillet 2014?
Encore désolé pour ma nullité ^^
mais merci à vous de prendre le temps !! 😱

Dans ma dernière proposition il n'était pas question d"une macro "menu".
Si ton fichier correspond à celui que tu as fourni, copie et colle (aux bons endroits comme dans les explications données) les 2 macros :
- la première est une évènementielle : elle se lance dès le double clic sur un nom pour afficher et sélectionner l' onglet de même appellation
- la seconde, du même type, se lance dès le double clic sur une cellule contenant • dans l'onglet ouvert. J'ai mis ce • en A1 mais on peut changer le symbole et la cellule.

Dans l'immédiat, je ne dispose pas de temps pour étudier ta dernière idée.
 
- 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

  • Question Question
Réponses
29
Affichages
602
Réponses
5
Affichages
461
Retour