IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Effacer des lignes en temps réel selon la sélection [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Analyste
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Par défaut Effacer des lignes en temps réel selon la sélection
    Bonjour!

    Je suis novice avec le VBA... j'ai parcouru le net mais je n'ai pas trouvé la solution à mon problème.

    Mon but avec ce fichier et de savoir si les gens ont travaillé avec l'un des agents et d'avoir leur avis.

    J'ai un tableau Excel avec les noms des agents dans les cellules (b3:g3)

    Ce que je veux c'est que dans le menu déroulant se trouvant sous le nom (à savoir s'ils ont travaillé avec lui) s'ils choisissent "NON", que toutes les lignes se trouvant en dessous qui ont le nom de cet agent disparaissent...

    Voilà... je suis plutôt confus... surtout que l'idéal serait que le fichier soit en temps réel...


    J'ai tout de même inclus un brouillon du formulaire...

    Merci à l'avance de votre aide!
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Le code ci dessous devrait faire ce que tu souhaites

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
     
    If Not Intersect(Range("B3:G3"), Target) Is Nothing Then
        For i = 6 To Range("B" & Rows.Count).End(xlUp).Row
            If Range("B" & i).Value = "" And Range("B" & i).FormulaLocal <> "" Then Rows(i).Hidden = True Else Rows(i).Hidden = False
        Next i
     
    End If
     
    End Sub

  3. #3
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    Tout le boulot a été fait par Jfontaine.

    Ci-dessous une p'tite correction pour prendre en compte le cas où transitoirement,
    aucun "Agent" ne serait sélectionné, (bon d'accord ... je sors )
    et 2 lignes pour limiter le scintillement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
     
        If Not Intersect(Range("B3:G3"), Target) Is Nothing Then
            Application.ScreenUpdating = False
            
            For i = 6 To Range("A" & Rows.Count).End(xlUp).Row
                If Range("B" & i).Value = "" And Range("B" & i).FormulaLocal <> "" Then Rows(i).Hidden = True Else Rows(i).Hidden = False
            Next i
            
            Application.ScreenUpdating = True
         
        End If
     
    End Sub

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Analyste
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Par défaut
    Wow! Ça marche merveilleusement bien!



    Merci Jérôme!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Est-ce possible de creer des champs en temps réel lors d'une requête SQL ?
    Par kaptnkill dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/09/2006, 19h18
  2. comment je peux effacer des lignes
    Par aliwassem dans le forum Composants VCL
    Réponses: 1
    Dernier message: 07/03/2006, 19h05
  3. [FLASH MX2004] Tracer une ligne en temps réel
    Par tomtom- dans le forum Flash
    Réponses: 1
    Dernier message: 16/02/2006, 09h52
  4. Réponses: 7
    Dernier message: 27/01/2006, 01h44
  5. Probleme pour effacer des lignes
    Par Thargor dans le forum Oracle
    Réponses: 7
    Dernier message: 12/10/2005, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo