Autres (RESOLU)Afficher les lignes qui contient 1

chaelie2015

XLDnaute Accro
Bonsoir
Je souhaite via VBA (bouton) d'afficher toutes les lignes (a partir de la ligne 6) de la colonne Q qui contient la valeur 1 par un bouton.
a+
 

Pièces jointes

  • Charlie Afficher les lignes contient 1.xlsx
    14 KB · Affichages: 7
Solution
Bonsoir chaelie2015, Phil69970, mapomme,
VB:
Sub Filtrer_les_1()
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("Q6", Range("Q" & Rows.Count).End(xlUp))
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    .SpecialCells(xlCellTypeConstants, 16).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub

Sub RAZ()
Rows.Hidden = False 'affiche tout
End Sub
Bonne nuit.

chaelie2015

XLDnaute Accro
Bonsoir chaelie2015, Phil69970, mapomme,
VB:
Sub Filtrer_les_1()
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("Q6", Range("Q" & Rows.Count).End(xlUp))
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    .SpecialCells(xlCellTypeConstants, 16).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub

Sub RAZ()
Rows.Hidden = False 'affiche tout
End Sub
Bonne nuit.
Bonjour Job
Dans le cas ou j'ai des cellules fusionnées j'ai un petit souci?
ci joint l'exemple
et je souhaite l'appliquer pour une autre colonne
a+
 

Pièces jointes

  • Charlie Afficher les lignes contient 1 job.xlsm
    19.6 KB · Affichages: 2
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour chaelie2015, mapomme,
VB:
Sub Filtrer_les_1()
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("Q6:Q" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    .SpecialCells(xlCellTypeConstants, 16).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub

Sub RAZ()
Rows.Hidden = False 'affiche tout
End Sub

Sub FiltrerB_les_1()
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("T6:T" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    .SpecialCells(xlCellTypeConstants, 16).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub
Pas regardé la solution de mapomme.

A+
 

Pièces jointes

  • Charlie Afficher les lignes contient 1 job.xlsm
    20.7 KB · Affichages: 1

chaelie2015

XLDnaute Accro
RE JOB , MAPOMME
mapomme merci encore pour les solutions
je souhaite encore conditionner le code par le filtre de l'Excel selon le filtre de la colonne K.
Merci par avance.
 

Pièces jointes

  • Charlie Afficher les lignes contient 1 job 2.xlsm
    20 KB · Affichages: 2

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour chaelie, Phil, mapomme & job
Je reprends, une touche "enter" trop rapide
Waouh.... Waouh & encore Waouhhhhhh -- Page 1 : --------------------------------------------------------Notre ami job75 (que je salue au passage), a obtenu sur ce sujet, le césar. Il me semble, à ce stade (Page1) mais cela n'engage que moi, que nos amis nominés mapomme et Phil (que je salue tout deux également), étaient également bien engagés avec une petite préférence pour Phil qui s'est bien investi dès le départ. Hormis un codage peut être plus synthétisé et l'ajout du bouton "Raz" de job, il semblerait que tout notre beau monde soit parvenu à une finalité identique. Pourtant, une chose m'interpelle : Page 1 : Job a eu le césar avec un pouce, mapomme un pouce et Phil : Nada ????
C'était mon coup de g... du jour ... Ca fait du bien..
@+ Eric c
 

job75

XLDnaute Barbatruc
je souhaite encore conditionner le code par le filtre de l'Excel selon le filtre de la colonne K.
VB:
Sub Filtrer_les_1()
Dim P As Range
On Error Resume Next 'si aucune SpecialCell
RAZ
With Range("Q6:Q" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    Set P = .SpecialCells(xlCellTypeVisible)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    Intersect(P, .SpecialCells(xlCellTypeConstants, 16)).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub

Sub RAZ()
Application.ScreenUpdating = False
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("K6:K" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    .Rows.Hidden = False 'affiche tout
    .AutoFilter 1, "BEL" 'critère à adapter
End With
End Sub

Sub FiltrerB_les_1()
Dim P As Range
On Error Resume Next 'si aucune SpecialCell
RAZ
With Range("T6:T" & Cells.SpecialCells(xlCellTypeLastCell).Row).SpecialCells(xlCellTypeVisible)
    Set P = .SpecialCells(xlCellTypeVisible)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    Intersect(P, .SpecialCells(xlCellTypeConstants, 16)).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub
Salut Eric C.

Edit : des Application.ScreenUpdating = False inutiles.
 

Pièces jointes

  • Charlie Afficher les lignes contient 1 job 2.xlsm
    22.8 KB · Affichages: 1
Dernière édition:

chaelie2015

XLDnaute Accro
VB:
Sub Filtrer_les_1()
Dim P As Range
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
RAZ
With Range("Q6:Q" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    Set P = .SpecialCells(xlCellTypeVisible)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    Intersect(P, .SpecialCells(xlCellTypeConstants, 16)).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub

Sub RAZ()
Application.ScreenUpdating = False
If FilterMode Then ShowAllData 'si la feuille est filtrée
With Range("K6:K" & Cells.SpecialCells(xlCellTypeLastCell).Row)
    .Rows.Hidden = False 'affiche tout
    .AutoFilter 1, "BEL" 'critère à adapter
End With
End Sub

Sub FiltrerB_les_1()
Dim P As Range
Application.ScreenUpdating = False
On Error Resume Next 'si aucune SpecialCell
RAZ
With Range("T6:T" & Cells.SpecialCells(xlCellTypeLastCell).Row).SpecialCells(xlCellTypeVisible)
    Set P = .SpecialCells(xlCellTypeVisible)
    .Replace 1, "#N/A", xlWhole
    .EntireRow.Hidden = True 'masque tout
    Intersect(P, .SpecialCells(xlCellTypeConstants, 16)).EntireRow.Hidden = False 'affiche
    .Replace "#N/A", 1
End With
End Sub
Salut Eric C.
Re
Merci job
pourquoi que "Bel" et les autres ?
"AutoFilter 1, "BEL" '
a+
 

Discussions similaires

Réponses
22
Affichages
938
Réponses
8
Affichages
263

Statistiques des forums

Discussions
312 795
Messages
2 092 202
Membres
105 272
dernier inscrit
DDM7315