créer macro pour masquer une ligne suivant un critère
#1
Débutant XLPages

Inscription: 25/10/2010

Messages: 1

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 27-10-2010 22h06
Bonsoir

Je crée un tableau concernant l'absentéïsme. Si les cellules de la colonne AA contiennent "remplacement effectué", alors masquer la ligne correspondante. Pour cela, je sollicite votre aide pour créer une macro qui me permettra de masquer les lignes concernées et éventuellement une macro, en cas de besoin, pour afficher ces lignes.
Merci d'avance pour votre aide, sachant que je suis complètement débutante en VBA



Hors Ligne
Rapport   Haut 

Re: créer macro pour masquer une ligne suivant un critère
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 28-10-2010 00h58
Bonsoir Odalor, bienvenue sur XLpages.com

Ci-dessous, une approche possible :

DANS UN MODULE DE CODE STANDARD (ex : Module1)
Option Explicit
' myDearFriend!  -  www.mdf-xlpages.com

Sub MasquerLignes()
Dim PlageSource As Range, PlageCible As Range, R As Range
Dim L As Long
    'On cible toutes les cellules contenant une expression (constante) en colonne "AA"
    Set PlageSource = Sheets("Feuil1").Columns(27).SpecialCells(xlCellTypeConstants, 2)
    'Pour chaque cellule visée
    For Each R In PlageSource
        'Contient-elle l'expression recherchée ?
        If R.Value Like "*remplacement effectué*" Then
            'Si oui, on stocke sa référence dans un objet range "PlageCible"
            If PlageCible Is Nothing Then
                Set PlageCible = R
            Else
                Set PlageCible = Union(PlageCible, R)
            End If
        End If
    Next R
    'Si la PlageCible existe (n'est pas vide), on masque les lignes correspondantes
    If Not PlageCible Is Nothing Then
        PlageCible.EntireRow.Hidden = True
    End If
End Sub

Sub AfficherToutesLignes()
    'on réaffiche toutes les lignes masquées
    Sheets("Feuil1").Rows.EntireRow.Hidden = False
End Sub

Cela dit, dans ce type de demande et notamment si tu es débutante, un classeur exemple en pièce jointe avec la question, est toujours une bonne idée...

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes