OVH Cloud OVH Cloud

Macro de masquage de lignes

17 réponses
Avatar
Érico
Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules à
vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal

10 réponses

1 2
Avatar
isabelle
bonjour Érico,

doit t'on vérifié, si les cellules mentionnées sont égale à 0 ou bien, les lignes entière de ces cellule ?

isabelle


Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules à
vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal


Avatar
Érico
Les cellules mentionnées

"isabelle" a écrit dans le message de
news:
bonjour Érico,

doit t'on vérifié, si les cellules mentionnées sont égale à 0 ou bien, les
lignes entière de ces cellule ?


isabelle


Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas
de


valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les
cellules à


vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal




Avatar
michdenis
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de news:
Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules à
vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal
Avatar
isabelle
voilà ( attention au retour de ligne intempestif lors de la copie),

Sub Macro1()
Set bigRange = Application.Union(Range("M14:M20"), _
Range("M23:M26"), Range("M28:M38"), Range("M40:M45"), _
Range("M64:M67"), Range("M91:M95"), Range("N27"), Range("N39"))
For Each c In bigRange
If c = 0 Or c = Empty Then Rows(c.Row).EntireRow.Hidden = True
Next
End Sub

isabelle


Les cellules mentionnées

"isabelle" a écrit dans le message de
news:
bonjour Érico,

doit t'on vérifié, si les cellules mentionnées sont égale à 0 ou bien, les
lignes entière de ces cellule ?


isabelle


Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas
de


valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les
cellules à


vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal






Avatar
Érico
Merci beaucoup, ça fonctionné
C'est incroyable de voir des gens avec autant de connaissances.

Ciao

Érico




"isabelle" a écrit dans le message de
news:
voilà ( attention au retour de ligne intempestif lors de la copie),

Sub Macro1()
Set bigRange = Application.Union(Range("M14:M20"), _
Range("M23:M26"), Range("M28:M38"), Range("M40:M45"), _
Range("M64:M67"), Range("M91:M95"), Range("N27"), Range("N39"))
For Each c In bigRange
If c = 0 Or c = Empty Then Rows(c.Row).EntireRow.Hidden = True
Next
End Sub

isabelle


Les cellules mentionnées

"isabelle" a écrit dans le message de
news:
bonjour Érico,

doit t'on vérifié, si les cellules mentionnées sont égale à 0 ou bien,
les



lignes entière de ces cellule ?

isabelle


Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent
pas




de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les
cellules à


vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal








Avatar
Érico
Je ne comprends pas, il fonctionnait à merveille hier et maintenant, il ne
fonctionne pas,
Le débogueur me place vis à vis de:" If c = 0 Or c = Empty Then "

Merci de votre collaboration.

Érico



If c = 0 Or c = Empty Then
"michdenis" a écrit dans le message de
news:eYKIX%
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de
news:

Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas
de

valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules
à

vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal





Avatar
isabelle
bonjour Érico,

essaie en lui ajoutant une troisième condition,

If c = 0 Or c = "" Or c = Empty Then

isabelle


Je ne comprends pas, il fonctionnait à merveille hier et maintenant, il ne
fonctionne pas,
Le débogueur me place vis à vis de:" If c = 0 Or c = Empty Then "

Merci de votre collaboration.

Érico

If c = 0 Or c = Empty Then
"michdenis" a écrit dans le message de
news:eYKIX%
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de
news:

Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas
de

valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules
à

vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal







Avatar
isabelle
..si tu as mis "Option Explicit" en haut du module, il faut déclarer toutes les variables.

Dim c As Variant

isabelle



Je ne comprends pas, il fonctionnait à merveille hier et maintenant, il ne
fonctionne pas,
Le débogueur me place vis à vis de:" If c = 0 Or c = Empty Then "

Merci de votre collaboration.

Érico

If c = 0 Or c = Empty Then
"michdenis" a écrit dans le message de
news:eYKIX%
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de
news:

Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent pas
de

valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les cellules
à

vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal







Avatar
Érico
C'est parce que j'ai des résultats "#valeur!" qui bogue la macro.

Érico


"isabelle" a écrit dans le message de
news:
..si tu as mis "Option Explicit" en haut du module, il faut déclarer
toutes les variables.


Dim c As Variant

isabelle



Je ne comprends pas, il fonctionnait à merveille hier et maintenant, il
ne


fonctionne pas,
Le débogueur me place vis à vis de:" If c = 0 Or c = Empty Then "

Merci de votre collaboration.

Érico

If c = 0 Or c = Empty Then
"michdenis" a écrit dans le message de
news:eYKIX%
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de
news:

Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent
pas



de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les
cellules



à
vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal









Avatar
Érico
Comment je peux mettre la formule "esterr" dans la formule suivante?
=SOMME(M25:M28)
Ça va règler mon problème une fois pour toute.

Merci beaucoup
Érico


"isabelle" a écrit dans le message de
news:
..si tu as mis "Option Explicit" en haut du module, il faut déclarer
toutes les variables.


Dim c As Variant

isabelle



Je ne comprends pas, il fonctionnait à merveille hier et maintenant, il
ne


fonctionne pas,
Le débogueur me place vis à vis de:" If c = 0 Or c = Empty Then "

Merci de votre collaboration.

Érico

If c = 0 Or c = Empty Then
"michdenis" a écrit dans le message de
news:eYKIX%
Bonjour Érico,

Essaie ceci :

Adapte le nom de la feuille dans la procédure !

'------------------------------
Sub Masquer()

Dim Rg As Range, Are As Range, Nb As Long
Dim A As Long, T As Long, B As Long

With Worksheets("Feuil2")
Set Rg = .Range("M14:M20,M23:M26,M28:M38," & _
"M40:M45,M64:M67,M91:M95,N27,N39")
End With

Nb = Rg.Areas.Count
For A = Nb To 1 Step -1
Set R = Rg.Areas(A)
T = R.Rows.Count
For B = T To 1 Step -1
If R(B) = 0 Or R(B) = "" Then
R(B).EntireRow.Hidden = True
Else
R(B).EntireRow.Hidden = False
End If
Next
Next
Set Rg = Nothing: Set Are = Nothing
End Sub
'------------------------------


Salutations!


"Érico" a écrit dans le message de
news:

Bonjour,

Comment faire une macro qui masquerait des lignes qui ne contiennent
pas



de
valeur "", ou qu'ils contiennent la valeur "0" et de masquer. Les
cellules



à
vérifier sont:

M14 à M20
M23 à M26
M28 à M38
M40 à M45
M64 à M67
M91 à M95
N27
et N39.

Merci

Érico de Montréal









1 2