Je souhaiterais, par VBA, masquer l'ensemble des lignes comprises entre la
ligne 18 incluse et la première ligne en dessous qui contient une valeur
entre les colonnes G et J.
ou dit autrement
Masquer toutes les lignes qui ne contiennent aucune valeur dans la plage
G18:Jxx, où xx est la première ligne (au dela de la 18) qui contient une
valeur entre G et J.
Quelqu'un aurait-il une solution à me proposer ?
Merci
Domi
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
Sub zzz() For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden = True Next End Sub
AV
Sub zzz()
For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19
Step -1
If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden = True
Next
End Sub
Sub zzz() For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden = True Next End Sub
AV
Domi
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou fonction non définie" sur Step -1 ... Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est entre G et J qu'il doit rechercher les lignes vides... ? Parce que les autre colonnes dans la plage à masquer elles contiennent des valeurs... A+ Domi
"AV" a écrit dans le message de news:
Sub zzz() For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden True Next End Sub
AV
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou
fonction non définie" sur Step -1 ...
Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est
entre G et J qu'il doit rechercher les lignes vides... ?
Parce que les autre colonnes dans la plage à masquer elles contiennent des
valeurs...
A+
Domi
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de
news:Olbi5bncFHA.2664@TK2MSFTNGP15.phx.gbl...
Sub zzz()
For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19
Step -1
If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden True
Next
End Sub
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou fonction non définie" sur Step -1 ... Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est entre G et J qu'il doit rechercher les lignes vides... ? Parce que les autre colonnes dans la plage à masquer elles contiennent des valeurs... A+ Domi
"AV" a écrit dans le message de news:
Sub zzz() For i = Rows(Rows("19:65536").Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(" & i & ":" & i & ")") = 0 Then Rows(i).Hidden True Next End Sub
AV
AV
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou fonction non définie" sur Step -1 ...
C'est un problème de recopie : de For i jusquà Step -1 tout est sur une seule ligne
Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est entre G et J qu'il doit rechercher les lignes vides... ? Parce que les autre colonnes dans la plage à masquer elles contiennent des valeurs...
Ok je pensais que le reste était vide donc j'avais fait une recherche sur les lignes complètes Donc correction (à tester) :
Sub zzz() For i = Rows([G19:J65536].Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(G" & i & ":J" & i & ")") = 0 Then Rows(i).Hidden = True Next End Sub
AV
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou
fonction non définie" sur Step -1 ...
C'est un problème de recopie : de For i jusquà Step -1 tout est sur une seule
ligne
Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est
entre G et J qu'il doit rechercher les lignes vides... ?
Parce que les autre colonnes dans la plage à masquer elles contiennent des
valeurs...
Ok je pensais que le reste était vide donc j'avais fait une recherche sur les
lignes complètes
Donc correction (à tester) :
Sub zzz()
For i = Rows([G19:J65536].Find("*", , , , , xlPrevious).Row).Row To 19 Step -1
If Evaluate("CountA(G" & i & ":J" & i & ")") = 0 Then Rows(i).Hidden = True
Next
End Sub
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou fonction non définie" sur Step -1 ...
C'est un problème de recopie : de For i jusquà Step -1 tout est sur une seule ligne
Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est entre G et J qu'il doit rechercher les lignes vides... ? Parce que les autre colonnes dans la plage à masquer elles contiennent des valeurs...
Ok je pensais que le reste était vide donc j'avais fait une recherche sur les lignes complètes Donc correction (à tester) :
Sub zzz() For i = Rows([G19:J65536].Find("*", , , , , xlPrevious).Row).Row To 19 Step -1 If Evaluate("CountA(G" & i & ":J" & i & ")") = 0 Then Rows(i).Hidden = True Next End Sub
AV
Domi
Testé et approuvé ;o) Merci Domi
"AV" a écrit dans le message de news:%
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou fonction non définie" sur Step -1 ...
C'est un problème de recopie : de For i jusquà Step -1 tout est sur une seule
ligne
Juste pour info, j'ai du mal a voir dans ton code comment il sait que c'est
entre G et J qu'il doit rechercher les lignes vides... ? Parce que les autre colonnes dans la plage à masquer elles contiennent des
valeurs...
Ok je pensais que le reste était vide donc j'avais fait une recherche sur les
lignes complètes Donc correction (à tester) :
Sub zzz() For i = Rows([G19:J65536].Find("*", , , , , xlPrevious).Row).Row To 19 Step -1
If Evaluate("CountA(G" & i & ":J" & i & ")") = 0 Then Rows(i).Hidden = True
Next End Sub
AV
Testé et approuvé ;o)
Merci
Domi
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de
news:%23LXJDYocFHA.796@TK2MSFTNGP09.phx.gbl...
Merci Alain mais ça "coince"... j'ai systématiquement un message "Sub ou
fonction non définie" sur Step -1 ...
C'est un problème de recopie : de For i jusquà Step -1 tout est sur une
seule
ligne
Juste pour info, j'ai du mal a voir dans ton code comment il sait que
c'est
entre G et J qu'il doit rechercher les lignes vides... ?
Parce que les autre colonnes dans la plage à masquer elles contiennent
des
valeurs...
Ok je pensais que le reste était vide donc j'avais fait une recherche sur
les
lignes complètes
Donc correction (à tester) :
Sub zzz()
For i = Rows([G19:J65536].Find("*", , , , , xlPrevious).Row).Row To 19
Step -1
If Evaluate("CountA(G" & i & ":J" & i & ")") = 0 Then Rows(i).Hidden
= True