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 :

Fonction pour rechercher des lignes dans différents onglets [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Décembre 2017
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2017
    Messages : 51
    Par défaut Fonction pour rechercher des lignes dans différents onglets
    Bonjour

    Dans mon fichier ci-joint, j'ai des onglets nommés par année, dans chaque année il y a les appréciations pour chaque personnes (A,B,...)
    Je cherche une fonction a insérer dans l'onglet bilan qui me donnerai le bilan des notations de toutes les années d'une personne.
    Concrètement, je souhaiterais que dans l'onglet bilan, quand je saisi un nom d'agent (A,B,..) dans la cellule B2; je retrouve les ligne de cet agent pour toutes les années effectuées, ici 2020 et 2021; ainsi il y aurait en A3 nom de l'année du 1er onglet (2020) avec à coté la ligne de notation de l'année 2020, en A4 il y aurait le nom de l'année du 2ème onglet (2021) avec à coté la ligne de notation de l'année 2021 et ainsi de suite avec mise à jour quand de nouveaux onglets année seront créés.

    Merci par avance
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Homme Profil pro
    responsable d'équipe
    Inscrit en
    Décembre 2017
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : responsable d'équipe
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2017
    Messages : 51
    Par défaut
    Résolu avec ces 2 macros dans le code de la feuille "Bilan" :

    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
    16
    17
    18
    19
    20
    21
    22
    23
    Private Sub Worksheet_Activate()
    Worksheet_Change [A1] 'lance la macro
    End Sub
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nom$, lig&, w As Worksheet, i As Variant
    nom = [B2]
    lig = 3 '1ère ligne de destination
    Application.ScreenUpdating = False
    Application.EnableEvents = False 'désactive les évènements
    Rows(lig & ":" & Rows.Count).Delete 'RAZ
    For Each w In Worksheets
        If w.Name Like "####" Then
            i = Application.Match(nom, w.Columns(1), 0)
            If IsNumeric(i) Then
                Cells(lig, 1) = w.Name
                w.Cells(i, 1).Resize(, 11).Copy Cells(lig, 2)
                lig = lig + 1
            End If
        End If
    Next
    Application.EnableEvents = True 'réactive les évènements
    End Sub

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 19/04/2019, 17h10
  2. [XL-2010] Copier des lignes dans différents onglets
    Par PLJerem dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 09/04/2018, 21h08
  3. Réponses: 16
    Dernier message: 03/04/2015, 19h18
  4. Réponses: 3
    Dernier message: 14/05/2014, 12h00
  5. Réponses: 7
    Dernier message: 09/02/2009, 14h28

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