VB/VBA pour afficher/masquer une liste de feuilles d'un excel.
VBATEST
Messages postés
2
Statut
Membre
-
VBATEST Messages postés 2 Statut Membre -
VBATEST Messages postés 2 Statut Membre -
Bonjour,
Je souhaiterai une macro qui me permet d'afficher certaines feuilles et de masquer les autres,
J'ai un tableau en feuill1 avec le nom de chaque feuille dans la première colonne et un "1" ou "0" dans la seconde pour savoir si je dois afficher oui ou non.
Pour faire cette macro étant novice j'ai un peu de mal :
Voici la base qui ne marche malheureusement pas
Auriez vous une idée de comment je peux modifier ma macro pour cela fonctionne ? suis-je dans la bonne direction ?
Merci par avance
Je souhaiterai une macro qui me permet d'afficher certaines feuilles et de masquer les autres,
J'ai un tableau en feuill1 avec le nom de chaque feuille dans la première colonne et un "1" ou "0" dans la seconde pour savoir si je dois afficher oui ou non.
Pour faire cette macro étant novice j'ai un peu de mal :
Voici la base qui ne marche malheureusement pas
Sub Afficher1()
'
' Afficher1 Macro
'
Sheets("Feuil1").Select
Dim L As Integer
Dim I As Integer
I = Range(A:A)
L = 1
For L = 1 To Range("B65356").End(xlUp).Row
If Range(I & L) = 1 Then
Sheets(I).Visible = False
Next L
End If
Auriez vous une idée de comment je peux modifier ma macro pour cela fonctionne ? suis-je dans la bonne direction ?
Merci par avance
Configuration: Macintosh / Safari 12.1.1
A voir également:
- VB/VBA pour afficher/masquer une liste de feuilles d'un excel.
- Liste déroulante excel - Guide
- Comment faire un livret avec des feuilles a4 - Guide
- Excel liste déroulante en cascade - Guide
- Déplacer une colonne excel - Guide
- Comment masquer sa liste d'amis sur facebook mobile - Guide
3 réponses
bonjour,
voici une macro avec les noms des feuilles en colonne A et mettre x dans la colonne B pour masquer la feuille correspondante
Faire Alt f11 pour accéder à l'éditeur. ensuite aller dans le module de la feuille concernée en la sélectionnant en haut à gauche.
copier coller ce code:
Voilà
voici une macro avec les noms des feuilles en colonne A et mettre x dans la colonne B pour masquer la feuille correspondante
Faire Alt f11 pour accéder à l'éditeur. ensuite aller dans le module de la feuille concernée en la sélectionnant en haut à gauche.
copier coller ce code:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Var As Variant
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
Application.ScreenUpdating = False
On Error Resume Next
If Target.Value = "" Then
Var = ActiveSheet.Cells(Target.Row, Target.Column - 1)
Worksheets(Var).Visible = True
Else
Var = ActiveSheet.Cells(Target.Row, Target.Column - 1)
Worksheets(Var).Visible = xlSheetHidden
End If
End If
Application.ScreenUpdating = True
End Sub
Voilà
bonjour, suggestion:
Option Explicit
Private Sub Afficher1()
Dim nomfeuille As Range
Set nomfeuille = Sheets("Feuil1").[A1]
Do While nomfeuille <> ""
Select Case nomfeuille.Offset(0, 1)
Case 1
Sheets(nomfeuille.Value).Visible = True
Case 0
Sheets(nomfeuille.Value).Visible = False
End Select
Set nomfeuille = nomfeuille.Offset(1, 0)
Loop
End Sub