Afficher des feuilles avec case à cocher VBA Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
S
Sofia25164
Nouveau venu
Nouveau venu
Messages : 9
Inscrit le : 10 mars 2015
Version d'Excel : 2007

Message par Sofia25164 » 23 mars 2015, 13:58

Bonjour à tous,

Je souhaiterais avoir une petite information
Alors voilà j'ai créé un fichier dans lequel j'ai une dizaine de feuilles
J'ai créé un userform avec des cases à cocher pour afficher la feuille que je veux parmi les 10 sauf que j'aimerai bien que les 9 autres feuilles ne soient pas visibles.

Comment procéder?

MErci
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 413
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 23 mars 2015, 14:39

Bonjour,

Sans fichier de ta part ... tu ne vas obtenir que des infos générales ... :wink:

La propriété à utiliser ... et à adapter à ta situation ...est la suivante ...
Sheets("Nom_Feuille").Visible = False
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
S
Sofia25164
Nouveau venu
Nouveau venu
Messages : 9
Inscrit le : 10 mars 2015
Version d'Excel : 2007

Message par Sofia25164 » 23 mars 2015, 14:41

Bonjour
Et merci de m'avoir répondu :)
JE vous met le fichier en ci joint

Je souhaiterai aussi savoir comment enregistrer mes feuille sous pdf?

MErci
NOUVEAU MODELE DEVIS.xlsm
(94.75 Kio) Téléchargé 20 fois
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 413
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 23 mars 2015, 15:43

Re,

Malheureusement ton fichier joint ne semble pas correspondre à ta demande initiale ... :wink:

De plus, avant même d'avoir résolu le premier problème .. tu te lances dans un second ... :roll:
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
S
Sofia25164
Nouveau venu
Nouveau venu
Messages : 9
Inscrit le : 10 mars 2015
Version d'Excel : 2007

Message par Sofia25164 » 23 mars 2015, 15:50

Oupss! :lol: J'avais fait appel à des conseils précédemment pour un problème de numérotation automatique. Chose que j'ai réussi à résoudre finalement en insérant un code dans le WOrkbook

Maintenant je me trouve confronté à un probléme d'affichage de feuilles.

Voici le fichier complété en ci joint en ci joint ::)
NOUVEAU MODELE DEVIS2.xlsm
(165.79 Kio) Téléchargé 15 fois
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 413
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 23 mars 2015, 16:18

Re,

Si j'ai bien compris ta demande ... :wink:

Ci-dessous un code exemple pour le Devis Construction ...
Private Sub DC_Click()
If DC = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "DEVIS CONSTRUCTION" Then
      Sheets("DEVIS CONSTRUCTION").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
S
Sofia25164
Nouveau venu
Nouveau venu
Messages : 9
Inscrit le : 10 mars 2015
Version d'Excel : 2007

Message par Sofia25164 » 23 mars 2015, 16:42

Re James,

Alors j'ai testé le code que tu m'as donné et je t'en remercie.
Cependant en tapant la suite de mes codes pour mes autres feuilles et exécutant: je me trouve confronter au message d'erreur suivant:

1004
Impossible de définir la propriété Visible de la classe Worksheet
Private Sub DC_Click()
If DC = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "DEVIS CONSTRUCTION" Then
      Sheets("DEVIS CONSTRUCTION").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub TCE_Click()
If TCE = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "TC Export" Then
      Sheets("TC Export").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub GTCI_Click()
If GTCI = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Groupage TC Import" Then
      Sheets("Groupage TC Import").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub GTCE_Click()
If GTCE = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Groupage TC Export" Then
      Sheets("Groupage TC Export").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub AI_Click()
If AI = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Aerien Import" Then
      Sheets("Aerien Import").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub AE_Click()
If AE = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Aerien Export" Then
      Sheets("Aerien Export").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub VIM_Click()
If VIM = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Vehicule Import M" Then
      Sheets("Vehicule Import M").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub VIA_Click()
If VIA = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Vehicule Import A" Then
      Sheets("Vehicule Import A").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub VEM_Click()
If VEM = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Vehicule Export M" Then
      Sheets("Vehicule Export M").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub
Private Sub VEA_Click()
If VEA = True Then
  For Each sh In ActiveWorkbook.Sheets
    If sh.Name = "Vehicule Export A" Then
      Sheets("Vehicule Export A").Visible = True
    Else
      sh.Visible = False
    End If
  Next sh
End If
Unload Me
End Sub

En faite cela se produit lorsque je souhaite changer de feuilles. Je ne px les afficher.

LE principe c'est que quand je coche par ex devis construction mon numéro auto s'affiche automatiquement. A la fermeture ce numéro est enregistré mais quand j'ouvre mon fichier de nouveau je dois pouvoir changer de feuille par ex Aerien Import.
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 413
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 24 mars 2015, 08:38

Bonjour,

Ci-joint ton fichier test ... :wink: (à étudier...)
NOUVEAU MODELE DEVIS V3.xlsm
(170.04 Kio) Téléchargé 23 fois
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
S
Sofia25164
Nouveau venu
Nouveau venu
Messages : 9
Inscrit le : 10 mars 2015
Version d'Excel : 2007

Message par Sofia25164 » 24 mars 2015, 13:36

Bonjour James,

:sp: C'est super, le fichier test fonctionne à merveille et j'ai retranscrit les codes pour mon fichier définitif c'est impeccable. Merci mille fois pour l'aide fournie et le temps consacré :D
:thx:

Juste une petite question, si je souhaite enregistrer mon fichier en pdf, comment dois je procéder?
Avatar du membre
James007
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'007
Appréciations reçues : 413
Inscrit le : 30 août 2014
Version d'Excel : 2007 EN

Message par James007 » 24 mars 2015, 16:02

Re,

Content que cela fonctionne ...

Merci pour tes remerciements ... :wink:

Idéalement, pour un autre sujet, il faudrait que tu postes un autre message ... si tu veux une piste de recherche... l'instruction :
Activesheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=nomdufichier.pdf
A+

:)

Quand on n’a qu’un marteau, tous les problèmes deviennent des clous…
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message