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

vba masquer lignes suivant condition

12 réponses
Avatar
j-pascal
Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP

10 réponses

1 2
Avatar
Jacky
Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP




Avatar
Philippe.R
Bonsoir,
En filtrant ainsi :

Selection.AutoFilter Field:=4, Criteria1:="<>"
Selection.AutoFilter Field:=5, Criteria1:="<>"

on peut y arriver
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"j-pascal" a écrit dans le message de
news:
Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP




Avatar
Youky
Une solution
Youky

If Application.CountA([D:E]) = 0 Then
Columns("D:E").Hidden = True
Else
Columns("D:E").Hidden = False
End If
Avatar
Mgr.Abile
Bonsoir mon fils,
Je crois que ce sont les lignes que veux masquer le questionneur, pas les
colonnes, non ?
--
News://news.microsoft.com/microsoft.public.fr.excel
Allez en paix
T.Abile
"Youky" a écrit dans le message de
news:
Une solution
Youky

If Application.CountA([D:E]) = 0 Then
Columns("D:E").Hidden = True
Else
Columns("D:E").Hidden = False
End If




Avatar
Youky
Aie,aie aie...
Je vais de ce pas à confesse . . . .
Youky
"Mgr.Abile" a écrit dans le message de news:

Bonsoir mon fils,
Je crois que ce sont les lignes que veux masquer le questionneur, pas les
colonnes, non ?
--
News://news.microsoft.com/microsoft.public.fr.excel
Allez en paix
T.Abile
"Youky" a écrit dans le message de
news:
Une solution
Youky

If Application.CountA([D:E]) = 0 Then
Columns("D:E").Hidden = True
Else
Columns("D:E").Hidden = False
End If







Avatar
j-pascal
> Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP







Bonjour,

Merci pour cette proposition, mais j'ai précisé "à" et non pas "et" (ce
qui semble être le cas pour ce code).

Je pensais intégrer qqch comme : If Application.CountA([D:E])
mais je ne sais pas comment le combiner avec les variables "i"

@+ ?

JP
Avatar
Jacky
Re...
.....mais j'ai précisé "à" et non pas "et"


De la colonne D à la colonne E c'est bien D et E non ?
Ou alors, j'ai pas compris :o((

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP







Bonjour,

Merci pour cette proposition, mais j'ai précisé "à" et non pas "et" (ce
qui semble être le cas pour ce code).

Je pensais intégrer qqch comme : If Application.CountA([D:E])
mais je ne sais pas comment le combiner avec les variables "i"

@+ ?

JP




Avatar
j-pascal
> Re...
.....mais j'ai précisé "à" et non pas "et"


De la colonne D à la colonne E c'est bien D et E non ?
Ou alors, j'ai pas compris :o((

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP







Bonjour,

Merci pour cette proposition, mais j'ai précisé "à" et non pas "et" (ce qui
semble être le cas pour ce code).

Je pensais intégrer qqch comme : If Application.CountA([D:E])
mais je ne sais pas comment le combiner avec les variables "i"

@+ ?

JP







Désolé, vraiment ...

En fait, j'ai pris un exemple ambigü ! Je voulais dire sur une plage,
soit plutôt de D à Z.

Mille pardons ;-(

JP
Avatar
Jacky
Re...
soit plutôt de D à Z.


'----------------
Sub jj()
Application.ScreenUpdating = False
Rows("1:50").Hidden = False
For i = 50 To 1 Step -1
If Application.CountBlank(Range(Cells(i, 4), Cells(i, 26))) = 23 Then
Rows(i).Hidden = True
Next
End Sub
'-----------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Re...
.....mais j'ai précisé "à" et non pas "et"


De la colonne D à la colonne E c'est bien D et E non ?
Ou alors, j'ai pas compris :o((

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP







Bonjour,

Merci pour cette proposition, mais j'ai précisé "à" et non pas "et" (ce
qui semble être le cas pour ce code).

Je pensais intégrer qqch comme : If Application.CountA([D:E])
mais je ne sais pas comment le combiner avec les variables "i"

@+ ?

JP







Désolé, vraiment ...

En fait, j'ai pris un exemple ambigü ! Je voulais dire sur une plage, soit
plutôt de D à Z.

Mille pardons ;-(

JP




Avatar
j-pascal
> Re...
soit plutôt de D à Z.


'----------------
Sub jj()
Application.ScreenUpdating = False
Rows("1:50").Hidden = False
For i = 50 To 1 Step -1
If Application.CountBlank(Range(Cells(i, 4), Cells(i, 26))) = 23 Then
Rows(i).Hidden = True
Next
End Sub
'-----------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Re...
.....mais j'ai précisé "à" et non pas "et"


De la colonne D à la colonne E c'est bien D et E non ?
Ou alors, j'ai pas compris :o((

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonsoir
par exemple:
'------------------
Sub jj()
For i = 50 To 1 Step -1
If Cells(i, 4) & Cells(i, 5) = "" Then Rows(i).Hidden = True
Next
End Sub
'------------------

--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

(En vba)
Sur un tableau de 50 lignes, comment puis-je masquer les lignes si les
colonnes D à E ne contiennent aucune saisie (chiffre ou lettre) ?

Merci pour vos lumières,

JP







Bonjour,

Merci pour cette proposition, mais j'ai précisé "à" et non pas "et" (ce
qui semble être le cas pour ce code).

Je pensais intégrer qqch comme : If Application.CountA([D:E])
mais je ne sais pas comment le combiner avec les variables "i"

@+ ?

JP







Désolé, vraiment ...

En fait, j'ai pris un exemple ambigü ! Je voulais dire sur une plage, soit
plutôt de D à Z.

Mille pardons ;-(

JP







Merci, c'est parfait !
Pourquoi fais-tu une boucle à partir de la dernière ligne et non de la
première ?

jp
1 2