Macro : masquer / afficher une ligne si la valeur d'une cellule est nulle ou pas

Signaler
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008
-
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008
-
Bonjour,

Après avoir cherché en vain dans les posts, je viens vous demander de l'aide.

J'ai créé un tableau de saisie avec divers onglets (Excel 2000 + VBA 6.3). Dans chaque onglet, j'ai créé 100 lignes. Grace à une macro appliquée sur une colonne, Excel masque par exemple la ligne 11 si la cellule B10 n'a pas été saisie. Idem pour les autres lignes (ligne 12 masquée si la cellule B11 n'a pas été saisie). Inversement si la cellule B10 est saisie, la ligne 11 s'affiche.

Je n'ai pas eu de mal à faire cette macro car les cellules de la colonne B étaient totalement vides : pas de formules et pas de valeurs. Pour mon dernier onglet, je veux appliquer la même macro. Cependant, les cellules de la colonne, sur laquelle je veux appliquer ma macro, contiennent une formule.

A la place de ma ligne VBA qui dit : si la cellule n'est pas vide, affiche moi la ligne suivante, sinon masque-la :




If Cells(row, 2) <> "" Then

    status_indNov(row - 14) = 1
    counterindNov = counterindNov + 1
Else
    status_indNov(row - 14) = 0
End If

je veux écrire : "


si la valeur de la cellule n'est pas vide, affiche moi la ligne suivante, sinon masque-la". J'ai essayé :



If Cell(row, 6).Value <> "" Then



mais ça ne fonctionne pas. Auriez-vous une idée ?

Merci d'avance
Bonne journée

11 réponses

Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
Error convertoring HTML to XHTML: System.Exception: Unexpected EOF parsing start tag 'a'
at FreeTextBoxControls.Support.Sgml.Entity.Error(String msg, String arg)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseStartTag(Char ch)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseTag(Char ch)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseMarkup()
at FreeTextBoxControls.Support.Sgml.SgmlReader.Read()
at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
at FreeTextBoxControls.Support.Formatter.HtmlToXhtml(String input)
Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
Mais heu!!!!
Je recommence.

Bonjour,

As-tu essayé : "IsNull" ???

Bon courage

S.L.B.
<hr />
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Salut,
tu peux peu être essayer IsEmpty()

@+: Ju£i€n
Pensez: Réponse acceptée
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008

Merci pour vos réponses rapides SL.B et Julien

J'ai essayé successivement :

-


If Cell(row, 6).Value <> "IsNull" Then








- If Cell(row, 6).Value <> IsNull Then


- If Cell(row, 6).Value <> IsEmpty() Then









Mais rien ne se passe    :-(
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Re,
non il faut mettre

If Not IsEmpty(Cell(row, 6)) Then

@+: Ju£i€n
Pensez: Réponse acceptée
Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
Error convertoring HTML to XHTML: System.Exception: Unexpected EOF parsing start tag 'a'
at FreeTextBoxControls.Support.Sgml.Entity.Error(String msg, String arg)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseStartTag(Char ch)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseTag(Char ch)
at FreeTextBoxControls.Support.Sgml.SgmlReader.ParseMarkup()
at FreeTextBoxControls.Support.Sgml.SgmlReader.Read()
at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
at FreeTextBoxControls.Support.Formatter.HtmlToXhtml(String input)
Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
ben la réponse de julien est quasiment la meme :

if isempty(Cells(row, 2)) = true

S.L.B.
<hr />
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008

Désolée, toujours rien.



J'ai essayé successivement :


-  If Not IsEmpty(Cell(row, 6)) Then
- if isempty(Cells(row, 6)) = true Then
- if isempty(Cells(row, 6)) = false Then

Si ça peut vous aider, la formule qui est dans la colonne F, est du type :




SI(OU(E2531;E25=60;E25=91;E25=121;E25=152;E25=182);"";E25)





Merci encore
Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
Tu as essayé tout simplement
cells(row,6) = 0
???
C'est peut etre bête mais bon...
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008

Je viens de reessayer toutes les formules où j'avais mis "cell" au lieu de "cells"

J'ai aussi essayé :
-  If Cells(row, 6) = 0 Then
- If Cells(row, 6). Value <> 0 Then
- If Cells(row, 6) <> 0 Then

et...toujours rien  ;-(
Messages postés
5
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
12 novembre 2008

Je viens de reessayer toutes les formules où j'avais mis "cell" au lieu de "cells"

J'ai aussi essayé :
-  


If




Cells(row, 6) = 0 Then
- If Cells(row, 6). Value <> 0 Then
- If Cells(row, 6) <> 0 Then


et...toujours rien  ;-(