Afficher onglets par numéros de feuille
Résolu
Nai
Messages postés
714
Date d'inscription
Statut
Membre
Dernière intervention
-
Nai Messages postés 714 Date d'inscription Statut Membre Dernière intervention -
Nai Messages postés 714 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde,
Je cherche à n'afficher que certains onglets d'un classeur.
Le problème, c'est que ces onglets sont renommés en fonction de cellule...
Mais je crois me souvenir qu'il est possible de nommer les feuilles en fonction de leur numéro...
Ainsi, mon code est, pour le moment :
Par contre, je me disais qu'avec un code comme ça :
Quelqu'un saurait comment n'afficher que les onglets définis par leur numéro ?
Merci de votre aide !
Fichier joint : https://www.cjoint.com/c/DItrcOEnEqA
Je cherche à n'afficher que certains onglets d'un classeur.
Le problème, c'est que ces onglets sont renommés en fonction de cellule...
Mais je crois me souvenir qu'il est possible de nommer les feuilles en fonction de leur numéro...
Ainsi, mon code est, pour le moment :
Option ExplicitSauf que cela ne fonctionne pas, logique je pense.
'--------
Sub Afficher_ateliers()
Dim Onglet(), Cptr As Byte, Idx As Byte
Onglet = Array("Accueil", "Accueil!B7", "Accueil!B8", "Accueil!B9", "Accueil!B10")
For Cptr = 1 To ThisWorkbook.Sheets.Count
On Error Resume Next
If Application.Match(Sheets(Cptr).Name, Onglet, 0) > 0 Then
If Err.Number > 0 Then
Sheets(Cptr).Visible = False
Else
Sheets(Cptr).Visible = True
End If
End If
On Error GoTo 0
Next
End Sub
Par contre, je me disais qu'avec un code comme ça :
ça pourrait marcher. Mais pas du tout... :/
Option Explicit
'--------
Sub Afficher_ateliers()
Dim Onglet(), Cptr As Byte, Idx As Byte
Onglet = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5", "Feuil6")
For Cptr = 1 To ThisWorkbook.Sheets.Count
On Error Resume Next
If Application.Match(Sheets(Cptr).Name, Onglet, 0) > 0 Then
If Err.Number > 0 Then
Sheets(Cptr).Visible = False
Else
Sheets(Cptr).Visible = True
End If
End If
On Error GoTo 0
Next
End Sub
Quelqu'un saurait comment n'afficher que les onglets définis par leur numéro ?
Merci de votre aide !
Fichier joint : https://www.cjoint.com/c/DItrcOEnEqA
A voir également:
- Afficher onglets par numéros de feuille
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Afficher appdata - Guide
- Whatsapp 2 numéros - Guide
- Restaurer les onglets chrome - Guide
4 réponses
Bonjour,
je pense que c'est ce que vous voulez meme si vous parlez de nom et de numéro
fichier modifie: https://www.cjoint.com/?DItrSP5so5a
A+
je pense que c'est ce que vous voulez meme si vous parlez de nom et de numéro
fichier modifie: https://www.cjoint.com/?DItrSP5so5a
A+
Bonsoir et merci !
Ça fonctionne (j'ai corrigé la faute dans le nom de la macro "réinitialiser" :p)
Par contre, je ne sais pas pourquoi ça fonctionne.
En bidouillant, j'ai trouvé comment n'afficher que les classes et la feuille Accueil avec :
Pour que je le sache, peux-tu m'éclairer ?
Merci pour ta rapidité :D
Ça fonctionne (j'ai corrigé la faute dans le nom de la macro "réinitialiser" :p)
Par contre, je ne sais pas pourquoi ça fonctionne.
En bidouillant, j'ai trouvé comment n'afficher que les classes et la feuille Accueil avec :
For Cptr = 2 To 16Mais je ne sais pas à quoi correspond ces chiffres :D
Pour que je le sache, peux-tu m'éclairer ?
Merci pour ta rapidité :D
Bonjour,
Mais je ne sais pas à quoi correspond ces chiffres
explication au plus simple:
si vous regardez dans l'explorer de projet du VBA, il y toutes les feuilles que vous avez crees de feuil1 a feuil26 et entre parenthèses le nom que vous leurs avez donnees "a","z" etc .....
quand vous ecrivez ceci:
si vous ecrivez ceci:
Mais je ne sais pas à quoi correspond ces chiffres
explication au plus simple:
si vous regardez dans l'explorer de projet du VBA, il y toutes les feuilles que vous avez crees de feuil1 a feuil26 et entre parenthèses le nom que vous leurs avez donnees "a","z" etc .....
quand vous ecrivez ceci:
x=Sheets(2).name, x recupere le nom de la deuxieme feuille en partant de la gauche sur le fenetre excel pour vous c'est "a"
si vous ecrivez ceci:
Sheets(2).Visible=Falsevous masquez cette meme feuille 2 ou "a" dans votre contexte. si vous deplacez une feuille elle prend le rang de la feuille qui etait a cette place et a ce moment la si vous voulez masquer des feuilles, il faut utiliser les noms de feuille au lieu des rangs car il y a decalage entre nom et rang
x recupere le nom de la deuxieme feuille en partant de la gauche sur le fenetre excel
Merci !
Ça fonctionne, en effet, mais je pensais plutôt à des chiffres propres à chaque feuille, quel que soit sa place dans le document.
J'ai ajouté une dernière de statistiques, je sais comment la masquer du coup :p
Encore merci !
Merci !
Ça fonctionne, en effet, mais je pensais plutôt à des chiffres propres à chaque feuille, quel que soit sa place dans le document.
J'ai ajouté une dernière de statistiques, je sais comment la masquer du coup :p
Encore merci !