Masquer/afficher une ligne

Résolu/Fermé
zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015 - 2 juin 2015 à 13:11
zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015 - 2 juin 2015 à 14:53
Bonjour,

J'aurais besoin de votre aide, j'ai trouvé la macro suivante de Mike-31, qui permet de masquer les lignes quand une cellule dans la colonne M est vide:

Sub masquer_ligne_Vide()
Dim cel As Range
For Each cel In Range("M3:M100")
If cel = "0" Then
cel.EntireRow.Hidden = True
End If
Next
End Sub

Je voudrais ajouter une condition pour que la ligne s'affiche quand la cellule dans la colonne M est remplie

Merci par avance pour votre aide.

Zambrya
A voir également:

2 réponses

Danelectro Messages postés 1723 Date d'inscription samedi 25 février 2012 Statut Membre Dernière intervention 29 mars 2018 369
2 juin 2015 à 13:12
Salut,
Peut être quelque chose comme ça ?

Sub masquer_ligne_Vide()
Dim cel As Range
For Each cel In Range("M3:M100")
If cel != "0" Then
cel.EntireRow.Hidden = False
End If
Next
End Sub
0
zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015
2 juin 2015 à 13:42
Bonjour,

Merci pour la réponse.
La macro fonctionne pour afficher les cellules, mais en fait je voudrait que les cellules où il y a "0" soit masquées et les cellules différente de "0" soit affichées

Il faudrait une macro où les deux conditions soit imbriquées

Merci

Zambrya
0
zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015 > zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015
2 juin 2015 à 13:59
En gros je voudrais une formule de ce genre :

Sub masquer_ligne_Vide()
Dim cel As Range
For Each cel In Range("M3:M100")
If cel = "0" Then
cel.EntireRow.Hidden = True
Else : cel <> 0
cel.EntireRow.Hidden = False
End If
Next
End Sub

Mais la ligne en gras est en rouge. Je ne sais pas comment faire le signe "différent de". Le signe "!=" ne fonctionne pas non-plus.

Merci

Zambrya
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 076
Modifié par Mike-31 le 2/06/2015 à 14:49
Bonjour,

comme cela

Sub masquer_ligne_Vide()
Dim cel As Range
For Each cel In Range("M3:M100")
If cel = "0" Then
cel.EntireRow.Hidden = True
ElseIf cel <> 0 Then
cel.EntireRow.Hidden = False
End If
Next
End Sub


par contre je pense que tu devrais prévoir un bout de code pour éventuellement afficher les lignes masquées pour modifier les données

Sub afficher()
Cells.EntireRow.Hidden = False
End Sub
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
zambrya Messages postés 22 Date d'inscription mardi 26 mai 2015 Statut Membre Dernière intervention 17 juin 2015
2 juin 2015 à 14:53
Merci beaucoup c'est exactement ce que je voulais

Bonne journée

Zambrya
0