Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 RESOLU - Afficher nombre de ligne en fonction d'une valeur dans une cellule (VBA)

reyjak

XLDnaute Nouveau
Bonjour à tous,

Je pédale sévère sur ma requête que je vous soumets,
Autant sur un tas d'autres macro j'ai pu trouver différentes aides que j'ai pu combiner.
Autant celle-là, le néant.


Je suis à la recherche d'une macro qui peut me masquer un nombre de ligne en fonction d'une valeur.

Info :
Je vais de 1 à 20 de B2;B21
En C1 , ma valeur, avec un onglet déroulant allant de 1 à 19.

Je souhaite que, en fonction de ma valeur je n'affiche pas les nombres supérieurs:

Ex:
Si je sélectionne : 4
Il ne s'affiche que les 4 premières lignes, sans pour autant cacher les valeurs se trouvant à partir de B22.
(j'avais trouvé une équivalence mais pas réussi à l'adapter à ce que je cherchais).

Je pense que la solution est simple, mais je n'arrive pas à la poser...

Merci par avance de votre lecture, de votre temps et de vos idées.

Reyjak.

PS : je peux joindre un fichier, mais pour ce qu'il y a sur la feuille excel je n'ai pas jugé cela utile.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Reyjak, JHA,
Un essai en PJ avec cette macro dans un fichier basé sur celui de JHA :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [C1]) Is Nothing Then
        If [C1] > 0 And [C1] < 21 Then
            Rows("2:21").EntireRow.Hidden = True
            Rows("2:" & [C1] + 1).EntireRow.Hidden = False
        End If
    End If
End Sub
 

Pièces jointes

  • Classeur lister nombre de données.xlsm
    14.9 KB · Affichages: 10

job75

XLDnaute Barbatruc
Bonjour reyjak, JHA, sylvanu,
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
With [C1]
    If Intersect(Target, .Cells) Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Rows(2).Resize(20).Hidden = True
    If .Value Then Rows(2).Resize(.Value).Hidden = False
End With
End Sub
A+
 

Pièces jointes

  • Afficher(1).xlsm
    14.6 KB · Affichages: 8

reyjak

XLDnaute Nouveau
Re,

JHA, Sylvanu, job75, merci à vous pour votre retour rapide.
J'ai testé les différentes solutions, avec vos documents et sur vos documents cela fonctionne très bien.
Lorsque je bouge les valeurs (du code vba) de place, cela fonctionne aussi.

Après, je suis confronté à problème qui est propre à la version de mon entreprise, qui fait que lorsque je l'exécute dans mon dossier j'ai une erreur de compilation dû à une référence manquante.
Et si je l'ignore cela ne fonctionne pas.

En tout cas, encore un grand merci encore pour votre aide,

Je vois pour clore le sujet.

Reyjak.
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…