Masquer des lignes avec une macros

Résolu
Arthur -  
 Arthur -
Bonjour,

Je cherche à masquer ou à afficher les lignes de mon excel dont je n'ai pas besoin pour des calculs.

L'utilisateur du tableur choisi un nombre entre 1 et 10 correspondant au nombre de lignes nécessaire. Ainsi, si il demande 6 lignes, les 4 autres ne servent plus et celles-ci doivent être masquées.

J'ai essayé de réaliser ceci avec une liste déroulante affecté à une macro mais sans aucun résultat satisfaisant.

Voici les trois macros que j'ai fais pour l'instant :

Sub Macro1()
Dim Num_line As Long
For Num_line = 4 To 5
If ("B1") > 4 Then
Rows("4:5").Select
Selection.EntireRow.Hidden = True
End If
Next
End Sub

Sub Macro2()
Dim Num_line As Long
For Num_line = 4 To 6
If Month(Cells(6, Num_line)) > Cells(1, 1) Then
Columns(Num_line).Hidden = True
Else
Columns(Num_line).Hidden = False
End If
Next
End Sub

Sub Macro3()
Range("3:5").Select
For Value = 3 To 5
If Value = "" Then
EntireRow.Hidden = True
End If
Next
End Sub

Merci par avance

2 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    merci d'utiliser les balises de code pour partager du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

    ta macro1 me semble la plus prometteuse. à quoi sert B1?
    quelles lignes faut-il marquer? les premières, les dernières?
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      suggestion:
      Sub mm()
      Dim nlig As Long
      For nlig = [a1] + 1 To 10
          Rows(nlig).Hidden = True
      Next nlig
      End Sub
      0
    2. Arthur_0303
       
      Bonsoir,
      B1 correspond à la cellule à laquelle je fais ma condition qui dis que cette valeur doit être supérieur à 4.
      Les lignes que je souhaite masquer sont les dernières, les plus basse.

      Ps, ce tableur me permettra de faire une étude de sol et cette partie correspond à l’une de ses étapes.
      En clair, j’étudie plusieurs couches et dans celles-ci j’étudie aussi leurs sous-couches, c’est à dire 10 sous couches maximum par couches. Plus il y a de sous-couches plus les résultats seront précis.
      Cependant, lorsqu’une couche et trop fine, je peux diminuer le nombre de sous-couches.
      En effet, les sous-couchés correspondent à mon nombre de lignes. Ainsi lorsque je demande 6 sois-couches, par exemple, je veux masquer mes dernières lignes de calculs.

      Merci beaucoup de votre réponse ;)
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Arthur_0303
         
        ceci était relativement clair:
        "L'utilisateur du tableur choisi un nombre entre 1 et 10 correspondant au nombre de lignes nécessaire"

        par contre, ceci est incompréhensible
        "B1 correspond à la cellule à laquelle je fais ma condition qui dis que cette valeur doit être supérieur à 4"

        as-tu une question?
        sinon, peux-tu marquer la discussion comme résolue?
        0
  2. Arthur
     
    C'est tout bon, je vous remercie

    Bonne soirée
    0