Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Masquer des lignes vides même si formules contenues dans lignes

13 réponses
Avatar
jpierrethillard
Bonjour,

J'ai nomm=E9 "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) =3D 0 Then _
Range("Tableau").Rows(c.Row).Hidden =3D True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cach=E9es?

Merci d'avance
JP

10 réponses

1 2
Avatar
papou
Bonjour
Range("Tableau").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True

Cordialement
Pascal

a écrit dans le message de news:

Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP
Avatar
FFO
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!


Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP



Avatar
jpierrethillard
Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'est
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!




Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
FFO
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test effectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!


Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'est
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!




Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -







Avatar
jpierrethillard
Re FFO

Ah, je regarde à nouveau dés le début de PM Si elle bloque chez moi
je te poste la page pour avoir ton avis sur le tableau en question.

Merci à tout à l'heure

JP

On 7 jan, 12:01, FFO wrote:
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test eff ectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!




Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'es t
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 j e te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!




Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenan t
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -



- Afficher le texte des messages précédents -





Avatar
jpierrethillard
FFO,

je confirme tout va bien dés lors qu'il n'y a pas de formules dans les
lignes. Dans mon cas j'ai des formules. C'est là la différence.

JP

On 7 jan, 12:01, FFO wrote:
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test eff ectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!




Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'es t
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 j e te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!




Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenan t
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -



- Afficher le texte des messages précédents -





Avatar
FFO
Rebonjours à toi

Sur ce lien un exemple :

http://www.cijoint.fr/cij164296994623.xls

Les lignes vides avec ou sans formule sont masquées

Testes le avec la Macro 1 ou 2

Les lignes avec formule présentent le chiffre "0" dans les cellules lorsque
celle-ci ne présente aucun résultat
Elles sont masquées si aucune cellule ne présente de résultat soit "0"
Si l'une d'entre elle donne un résultat donc différent de "0" elle n'est pas
masquée

Donnes moi ton avis !!!!



FFO,

je confirme tout va bien dés lors qu'il n'y a pas de formules dans les
lignes. Dans mon cas j'ai des formules. C'est là la différence.

JP

On 7 jan, 12:01, FFO wrote:
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test effectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!




Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'est
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!




Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -









Avatar
jpierrethillard
Re salut
Rien y fait!
Je te poste le fichier en fin de pm pour que tu te rendes compte!

A plus

Merci JP

On 7 jan, 13:10, FFO wrote:
Rebonjours à toi

Sur ce lien un exemple :

http://www.cijoint.fr/cij164296994623.xls

Les lignes vides avec ou sans formule sont masquées

Testes le avec la Macro 1 ou 2

Les lignes avec formule présentent le chiffre "0" dans les cellules lors que
celle-ci ne présente aucun résultat
Elles sont masquées si aucune cellule ne présente de résultat soit " 0"
Si l'une d'entre elle donne un résultat donc différent de "0" elle n'e st pas
masquée

Donnes moi ton avis !!!!




FFO,

je confirme tout va bien dés lors qu'il n'y a pas de formules dans les
lignes. Dans mon cas j'ai des formules. C'est là la différence.

JP

On 7 jan, 12:01, FFO wrote:
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test effectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!




Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'est
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres située s
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K 69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!






Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formule s.
J'utilse cette macro qui ne fonctionne que si les lignes sont vi des de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais cont enant
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le text e des messages précédents -



- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -



- Afficher le texte des messages précédents -







Avatar
FFO
Rebonjours à toi

Où est ce fichier ????

L'as tu oublié dans la souris ????


Re salut
Rien y fait!
Je te poste le fichier en fin de pm pour que tu te rendes compte!

A plus

Merci JP

On 7 jan, 13:10, FFO wrote:
Rebonjours à toi

Sur ce lien un exemple :

http://www.cijoint.fr/cij164296994623.xls

Les lignes vides avec ou sans formule sont masquées

Testes le avec la Macro 1 ou 2

Les lignes avec formule présentent le chiffre "0" dans les cellules lorsque
celle-ci ne présente aucun résultat
Elles sont masquées si aucune cellule ne présente de résultat soit "0"
Si l'une d'entre elle donne un résultat donc différent de "0" elle n'est pas
masquée

Donnes moi ton avis !!!!




FFO,

je confirme tout va bien dés lors qu'il n'y a pas de formules dans les
lignes. Dans mon cas j'ai des formules. C'est là la différence.

JP

On 7 jan, 12:01, FFO wrote:
Rebonjours à toi

Ma macro masque n'importe quelles lignes vides se situant de la ligne 1 à 69
séparées ou non pour un tableau allant de la colonne A à K (test effectué)
Je viens à l'instant de refaire un essai celà fonctionne

Si tu souhaites augmenter la plage il faut agir sur la ligne du code :

For Each c In Range("A1", "A69")

et adapter : A69

Ou la remplacer par :

For Each c In Range("A1", [A65535].End(xlUp))

Afin de traiter n'importe quelle plage

A toi de voir
Tiens moi informé !!!!




Salut FFO,
Merci déjà pour la macro,

Mon tableau a des lignes vides mais séparées. Je m'explique car c'est
jamais les memes lignes qui sont vides. La macro que tu me proposes
masque les 3 premieres lignes vides et c'est tout! D'autres situées
plus bas dans le tableau ne sont pas masquées.
Tu peux avoir une fois les lignes 5 à 10 vides et 23 à 26 et 45 à 48
dans le meme tableau.
Ce n'est jamais pareil.

Ce que me propose Papou masque toutes les lignes sans distinction
aucune.

Si vous avez un complément d'information à me donner je serai
effectivement très content.

Merci d'avance

JP

On 7 jan, 10:35, FFO wrote:
Salut à toi

Pour cacher les lignes vides avec ou sans formule de la plage A1:K69 je te
propose ce code :

For Each c In Range("A1", "A69")
For i = 0 To Range("K1").Column
If c.Offset(0, i) <> 0 Then
n = 1
End If
Next
If n <> 1 Then
c.EntireRow.Hidden = True
End If
n = 0
Next

Celà devrait faire
Dis moi !!!






Bonjour,

J'ai nommé "tableau" une plage de cellules A1:K69.
J'ai dans ce tableau des lignes vides mais contenant des formules.
J'utilse cette macro qui ne fonctionne que si les lignes sont vides de
texte et de formules.
Sub CacheLigne()

For Each c In Range("Tableau")
If Application.CountA(Range("Tableau").Rows(c.Row)) = 0 Then _
Range("Tableau").Rows(c.Row).Hidden = True
Next

End Sub

Que faut-il ajouter pour que les lignes vides de texte mais contenant
des formules soient aussi cachées?

Merci d'avance
JP- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -











Avatar
jpierrethillard
Re Salut,

Oh diable les réunions et le temps perdu. Heureusement qu'il y Excel.

Voici le fichier Onglet Contrat : http://www.cijoint.fr/cij1100030218614.xls

Merci
JP
1 2