Masquer une page excel (condition)

Résolu
redeyes6 -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

voila ce que je cherche à faire sur excel:

1) j'ai un calcul de pourcentage dans une cellule: a
2) si a<70%, je cache une sélection de cellule pour ne pas l'imprimer
3) si a>70%, je cache une autre selection de cellule pour ne pas l'imprimer.

En fait, suivant le résultat de a, je voudrais choisir la page à imprimer dans une note final qui serait sur une feuille excel différentes de celle du calcul.

Est-ce possible?

merci.

4 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    veux-tu cacher une sélection de cellules (des lignes...) ou une feuile ?
    Ce n'est pas pareil..

    eric
    0
  2. redeyes6
     
    Bonjour,

    Une sélection de cellule
    0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    colle ces 2 macros dans le code de ta feuille :
    Sub masquer()
        If [A1].Value < 0.7 Then
            Rows("6:10").EntireRow.Hidden = True
            Rows("11:15").EntireRow.Hidden = False
        Else
            Rows("6:10").EntireRow.Hidden = False
            Rows("11:15").EntireRow.Hidden = True
        End If
    End Sub
    Sub afficher()
            Rows("6:10").EntireRow.Hidden = False
            Rows("11:15").EntireRow.Hidden = False
    End Sub


    Si tu appelles 'masquer' les lignes 6 à 10 ou 11 à 15 se masquent en fonction du résultat dans A1.
    'afficher permet de réafficher la totalité des lignes.
    Tu peux leur affecter un raccourcis clavier par menu 'outils / macro / macros...' bouton 'options'
    eric
    0
    1. redeyes6
       
      Bonjour,

      ca marche!
      merci beaucoup pour ton aide.
      0
    2. redeyes6
       
      Bonjour,

      En fait pour un petit nombre de ligne ca marche mais avec le code suivant:
      Sub masquer()
      If [DeDi].Value < 0.7 Then
      Rows("534:590").EntireRow.Hidden = True
      Rows("591:647").EntireRow.Hidden = False
      Else
      Rows("534:590").EntireRow.Hidden = False
      Rows("591:647").EntireRow.Hidden = True
      End If
      End Sub
      Sub afficher()
      Rows("6:10").EntireRow.Hidden = False
      Rows("11:15").EntireRow.Hidden = False
      End Sub

      Il m'indique une erreur au niveau de la ligne que j'ai souligné.
      0
  4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Il faut etre plus précis sur l'erreur, pour moi aucun lien avec le nombre de lignes.
    Par contre si DeDi est un nom défini sur le feuille il faut l'écrire entre " ", si c'est une variable vba il faut laisser comme ça.
    eric
    0