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

Masquer lignes uniquement dans une plage de celulle

6 réponses
Avatar
venteprivee3
Bonjour,
Je cherche par une macro VBA a masquer les lignes dont la valeur est
"Hide" dans une plage de celulle d=E9nomm=E9e "maplage1"
J'ai mis ce code mais malheureusement cela ne marche pas...... :-(
Quelqu'un aurait-t-il une id=E9e ???

Sub CacherLigne()
Sheets("facture").Select
For Each ligne In ActiveSheet.UsedRange.Rows
r =3D ligne.Row
cherch=E9 =3D Application.Find("Hide", maplage1)
If Not (IsError(cherch=E9)) Then _
maplage1.EntireRow.Hidden =3D True
Next
End Sub

Merci pour votre aide....
Pierre-Yves

6 réponses

Avatar
ThierryP
Bonjour,

je serais tenté de dire :

for each c in maplage1
if c.value="Hide" then c.entirerow.hidden=true
next

Bonjour,
Je cherche par une macro VBA a masquer les lignes dont la valeur est
"Hide" dans une plage de celulle dénommée "maplage1"
J'ai mis ce code mais malheureusement cela ne marche pas...... :-(
Quelqu'un aurait-t-il une idée ???

Sub CacherLigne()
Sheets("facture").Select
For Each ligne In ActiveSheet.UsedRange.Rows
r = ligne.Row
cherché = Application.Find("Hide", maplage1)
If Not (IsError(cherché)) Then _
maplage1.EntireRow.Hidden = True
Next
End Sub

Merci pour votre aide....
Pierre-Yves



--


@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline

Avatar
Ardus Petus
Bonsoir,

Sub CacherLigne()
Dim plage As Range
Dim cherché As Range
Dim addr_premier_trouvé As String

Set plage = Worksheets("facture").Range("maplage1")
Set cherché = plage.Find( _
what:="Hide", _
searchorder:=xlByColumns _
)
If Not cherché Is Nothing Then
addr_premier_trouvé = cherché.Address
Do
cherché.EntireRow.Hidden = True
Set cherché = plage.FindNext(after:=cherché)
Loop Until cherché.Address = addr_premier_trouvé
End If
End Sub


Cordialement,
--
AP

a écrit dans le message de
news:
Bonjour,
Je cherche par une macro VBA a masquer les lignes dont la valeur est
"Hide" dans une plage de celulle dénommée "maplage1"
J'ai mis ce code mais malheureusement cela ne marche pas...... :-(
Quelqu'un aurait-t-il une idée ???

Sub CacherLigne()
Sheets("facture").Select
For Each ligne In ActiveSheet.UsedRange.Rows
r = ligne.Row
cherché = Application.Find("Hide", maplage1)
If Not (IsError(cherché)) Then _
maplage1.EntireRow.Hidden = True
Next
End Sub

Merci pour votre aide....
Pierre-Yves
Avatar
venteprivee3
Merci beaucoup pour ces réponses....je vais essayer cela.....et je
vous tiens au courant....
Pierre-Yves
Avatar
venteprivee3
Merci Ardus Petus....
Cependant la boucle "Loop Until cherché.Address = addr_premier_trouvé
" ne fonctionne pas, j'ai une erreur dessus.....et je n'arrive pas à
la réparer.....
Lorsque je retire la boucle donc "Do" et "Loop Until cherché.Address
= addr_premier_trouvé" cela fonctionne mais cela me cache juste une
ligne avec "Hide" et non les autres ce qui est normal je pense car la
boucle est retiré......
Pouvez-vous encore me donner un p'tit coup de pouce pr réparer cette
boucle...
Merci d'avance,
Pierre-Yves
Avatar
Ardus Petus
Ca marche très bien chez moi.
Quelle erreur s'affiche lorsqu'il se plante sur le do...loop ?

--
AP

a écrit dans le message de
news:
Merci Ardus Petus....
Cependant la boucle "Loop Until cherché.Address = addr_premier_trouvé
" ne fonctionne pas, j'ai une erreur dessus.....et je n'arrive pas à
la réparer.....
Lorsque je retire la boucle donc "Do" et "Loop Until cherché.Address
= addr_premier_trouvé" cela fonctionne mais cela me cache juste une
ligne avec "Hide" et non les autres ce qui est normal je pense car la
boucle est retiré......
Pouvez-vous encore me donner un p'tit coup de pouce pr réparer cette
boucle...
Merci d'avance,
Pierre-Yves
Avatar
venteprivee3
Voici le message d'erreur :
Erreur d'execution '91':
Variable objet ou variable de bloc with non définie

Je me suis un peu baladé dans l'aide mais sans succés....peut-etre
qu'il me manque un objet dans la bibliothèque...je en sais pas trop
....suis un peu perdu....
En tout cas merci pour votre aide