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 :

Données à récupérer [XL-2007]


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
    Ressources humaines
    Inscrit en
    Décembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2013
    Messages : 68
    Par défaut Données à récupérer
    Bonjour à toutes et à tous,

    Voilà mon petit souci: j'ai un fichier excel avec plusieurs onglets; l'onglet "MATRICE2014" est un planning de salariés.
    Les onglets "DIMANCHE" et "JOURS FERIES" me permettent de récupérer de l'onglet "MATRICE2014" en cliquant respectivement sur les boutons "Récup" et "Récup JF" le nom des salariés ayant travaillés un dimanche (ou un jour férié) et le nom du remplaçant s'il y a lieu.
    Je voudrai également récupérer les horaires de travail correspondant à ces jours..... Je ne sais pas du tout comment faire.. on m'avait déjà gentillement aidé pour ce code, mais je n'arrive pas à bien le comprendre et donc à le modifier pour obtenir ce que je veux.

    Merci de votre aide.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 40
    Par défaut complément d'info
    Bonjour,

    tu les veux où tes horaires ?
    dans quelles cellule ?

    Zéphyrin

  3. #3
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Averell1976 !!!

    Ca fait longtemps !
    Je vois que nos efforts cumulés t'ont servi jusque là ! C'est bien le but de cette communauté ! Parfait !
    Je vois que tu as été aidé par quelqu'un d'autre aussi. ^^

    Cependant, je rejoins zephyrin dans sa question. Je ne comprends pas bien ce que tu souhaites.

    Je te laisse revenir vers moi afin de pouvoir t'aider, comme jadis. Mouhahaha !

    Cordialement,
    Kimy

  4. #4
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Décembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2013
    Messages : 68
    Par défaut Données à récupérer
    Bonjour Kym_Ire, bonjour Zéphyrin


    Et oui ça fait longtemps!!!! c'était plutôt bon signe mais de nouveau je coince.... pas évident vba....
    Je vais donc essayer d'être plus clair:
    L'onglet "MATRICE2014" est en fait le planning de travail des salariés avec leurs horaires en fonction du jour de la semaine, les jours d'absence etc, le nom de leur remplaçant.....
    Les onglets "DIMANCHE" et "JOURS FERIES" me permettent de récupérer, en cliquant sur les boutons de commande "Récup" et"Récup JF" le nom des salariés qui doivent normalement travailler les dimanches (ou les jours fériés) et le nom de leur remplaçant éventuellement.
    Pour l'onglet "DIMANCHE" par exemple, la ligne 4 récupèrent les dates de dimanches du mois indiqué dans la matrice "MATRICE2014"; la ligne 5 me récupère le nom des salariés positionnés sur ces dates. La ligne 6 me récupère le nom des remplaçants éventuels.
    Et c'est là mon problème: je voudrais récupérer en ligne 7 les horaires effectués à ces dates: l'onglet "MATRICE2014" m'indique que le salarié nommé "COMBES J." devait travaillé le dimanche 3 janvier de 10h à 22h. En congés, il est remplacé par le salarié "Nicols".
    Je voudrais simplement récupérer ces infos dans l'onglet "DIMANCHE" quand je clique sur le bouton "Récup". Je récupère déjà le nom du salarié et le nom de son remplaçant. Me manque les horaires (cellules jaunes).....
    Même fonctionnement pour les jours fériés.
    Je remet la pièce jointe dans la discussion. Elle est plus claire que celle envoyée précédemment.MATRICE PLANNING.xlsm

    Voilà, j'espère que c'est plus clair.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 40
    Par défaut réponse
    salut,

    corrige le code ainsi
    et fais de même pour les jours fériés.

    Zephyrin

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    Sub Relevé()
    Dim cel As Range, i As Integer, derLigne As Integer, premLigne As Integer
    Dim ligneEcri As Integer, Salarie As String, Remplaçant As String, colEcri As Integer
    'je nettoie le contenu de la feuille "DIMANCHE"
    Sheets("DIMANCHE").Range("B5:G78").ClearContents
     
    Sheets("MATRICE2014").Activate
    'Lecture du tableau de la feuille Matrice 2014
    premLigne = 11: ligneEcri = 5
    derLigne = Range("B" & Rows.Count).End(xlUp).Row
    colEcri = 1
    'Pour empêcher le clignotement pendant le fonctionnement
    Application.ScreenUpdating = False
    'Boucle pour parcourir une ligne sur deux en lecture
    Do Until premLigne >= derLigne
    For Each cel In Range(Cells(premLigne, 2), Cells(premLigne, 33))
        'Pour vérifier si on est un dimanche
        If Cells(7, cel.Column) = "" Then GoTo Suite
        If Weekday(Cells(7, cel.Column)) = 1 Then
        'Colonne pour écrire
        colEcri = colEcri + 1
        'lecture des données à écrire
            Salarie = Cells(cel.Row, 2)
            Remplaçant = cel.Offset(1, 0)
            date_travail = ActiveCell '*****AJOUT
            DateJour = CDate(Cells(7, cel.Column))
            'Voir si travail il y a
            If cel <> "R" Then '*****MODIF And Cells(cel.Row, 2) <> "REMPLACANT" Then
            'On ouvre la feuille pour écrire
            Sheets("DIMANCHE").Activate
                        If Cells(4, colEcri) = DateJour Then
                    Cells(ligneEcri, colEcri) = Salarie
                    Cells(ligneEcri + 1, colEcri) = Remplaçant
                    Cells(ligneEcri + 2, colEcri) = date_travail '******AJOUT
                End If
            End If
        End If
    Suite:
        'On retourne dans la feuille pour lire les données suivantes
        Sheets("MATRICE2014").Activate
    Next
    'Incrémentation des lignes de lecture et d'écriture
        ligneEcri = ligneEcri + 3 '*****MODIF
        premLigne = premLigne + 2
        'Retour à la première colonne pour écrire la nouvelle ligne suivante
        colEcri = 1
    Loop
    Application.ScreenUpdating = True
    Sheets("DIMANCHE").Activate
    End Sub

  6. #6
    Membre confirmé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Décembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2013
    Messages : 68
    Par défaut Récup données
    Bonjour Zephyrin,

    Merci pour ton aide, mais cela ne fonctionne pas comme je voudrai; j'ai du mal m'exprimer.
    Dans ton code, date_travail=activecell--> je récupère dans l'onglet "DIMANCHE" sur les lignes horaires la valeur de ma cellule activée dans mon onglet "MATRICE2014"....
    C'est pas tout à fait cela
    Pour le dimanche 03 par exemple, je vois sur mon onglet "MATRICE2014" que Combes J. et Serret V. travaillent; En cliquant sur le bouton "Récup", je voudrai récupérer dans l'onglet "DIMANCHE" les données suivantes dans la colonne correspondant au dimanche 03:
    Pour Combes:
    Salarié-->Combes
    Remplacant-->Duduche
    Horaires--->10:00 - 22:00

    Pour Serret:
    Salarié-->Serret
    Remplacant-->bibiche
    Horaires-->21:45 - 7:30

    Merci de ton aide
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/07/2015, 13h25
  2. Réponses: 6
    Dernier message: 31/03/2009, 20h27
  3. deplacer des données récupérer
    Par bozykely3 dans le forum ASP
    Réponses: 3
    Dernier message: 14/06/2007, 15h57
  4. Réponses: 2
    Dernier message: 13/11/2003, 15h13
  5. cherche module ou langage pour récupérer des données audio..
    Par Ry_Yo dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 12/05/2003, 17h44

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