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 :

Macro pour alimenter un tableau à partir d'un planning et d'un tableau contenant un calendrier perpetuel [XL-2010]


Sujet :

Macros et VBA Excel

  1. #41
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    A quoi correspond "Doss" ?
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  2. #42
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Doss correspond à l'activité Back dans le planning, je modifierais les cellule Doss en Back dans la feuille "Activité.

    Cordialement,

  3. #43
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Voici la macro pour la mise à jour de la feuille Activité :

    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    Sub RemplirActivité()
        Dim Sem() As Variant, An As Integer, FinAn As Integer, Ctr As Integer
        Dim Ligne As Variant, Plage As Range, C As Range, Col As Integer
        Application.ScreenUpdating = False
        With Sheets("Activité")
            '"PLage" est la plage des noms des employés sur la feuille "Activité"
            Set Plage = .Range("A4", .Cells(.Rows.Count, 1).End(xlUp))
        End With
        With Sheets("Planning")
            'Récupération de l'année
            An = .[D2]
            'test si bissextile
            If An Mod 4 = 0 Then
                FinAn = 366 * 2
            Else
                FinAn = 365 * 2
            End If
            '"Sem est un tableau en mémoire à deux dimensions
            'la 1ere est le numéro de semaine et la seconde la date (ne sert pas, finalement)
            'Pour chaque jour, il y a deux lignes, pour le matin et l'après-midi
            'on dimensionne Sem
            ReDim Sem(1, FinAn)
            'Ctr sert au changement de semaine
            Ctr = .[F7]
            'boucle sur i, "step 2 signifie qu'on utilise une valeur sur 2 (1, 3, 5 etc.)
            For i = 1 To FinAn
                'si j est impair
                If Application.IsOdd(i) Then
                    'si la date n'est pas le 1 janvier et que le jour défini par k est un lundi
                    If DateSerial(An, 1, i) <> DateSerial(An, 1, 1) And Weekday(DateSerial(An, 1, Int(i / 2) + 1), 2) = 1 Then
                        'on additionne 1 à Ctr (changement de semaine)
                        If Ctr > 51 Then
                        Ctr = 1
                        Else
                        Ctr = Ctr + 1
                        End If
                    End If
                    'on met le n° de semaine en colonne 0
                    Sem(0, i) = "S" & Ctr
                    'la première fois, on met la prremière date en colonne 1
                    If i = 1 Then
                        Sem(1, i) = DateSerial(An, 1, 1)
                    'sinon, on additionne 1 à la date précédente
                    Else
                        Sem(1, i) = Sem(1, i - 1) + 1
                    End If
                Else
                    Sem(0, i) = "S" & Ctr
                    Sem(1, i) = Sem(1, i - 1)
                End If
            Next i
            'Remplissage
            Sheets("Activité").[C4:HF21].ClearContents
            For Each C In Plage
                '"Ligne correspond à la ligne de l'employé sur "Planning"
                Ligne = Application.Match(C.Value, .[A:A], 0)
                'si on a trouvé
                If IsNumeric(Ligne) Then
                    'on saute les colonnes des semaines avant la semaine 1
                    Do Until Sem(0, j) = "S1"
                        j = j + 1
                    Loop
                    'boucle sur les semaines
                    For i = j To FinAn
                        'addition dans les compteurs
                        Col = Application.Match(Sem(0, i), Sheets("Activité").[2:2], 0)
                        If .Cells(Ligne, i + 5) = "A" Then
                            Sheets("Activité").Cells(C.Row, Col) = Sheets("Activité").Cells(C.Row, Col) + 1
                        ElseIf .Cells(Ligne, i + 5) = "R" Then
                            Sheets("Activité").Cells(C.Row, Col + 1) = Sheets("Activité").Cells(C.Row, Col + 1) + 1
                        ElseIf .Cells(Ligne, i + 5) = "P" Then
                            Sheets("Activité").Cells(C.Row, Col + 2) = Sheets("Activité").Cells(C.Row, Col + 2) + 1
                        ElseIf .Cells(Ligne, i + 5) = "B" Then
                            Sheets("Activité").Cells(C.Row, Col + 3) = Sheets("Activité").Cells(C.Row, Col + 3) + 1
                        End If
                    Next i
                End If
            Next C
        End With
        Application.ScreenUpdating = True
    End Sub
    et le fichier : http://cjoint.com/?EDenZL84jxU
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  4. #44
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Bonjour Daniel,

    Merci pour ces macros, je regarde pour compléter la macro "remplissage mensuel".

    Je dois faire 2 modification.

    - Il faut que je fasse une modification dans la macro semaine, il faut que je mette en place un msg box qui propose par défaut de compléter la semaine précédente (oui ou non) et si non choix de la semaine à compléter pour éviter les oublis de mise à jour du tableau "suivi hebdo" en cas d'absence.

    -Je dois inclure la macro calculette dans la macro remplissage:

    La macro remplissage ne change pas mais la partie calculette est modifié.
    exemple calculateur.xlsx

    Cordialement,

  5. #45
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Bonjour Daniel,

    J'ai bien avancé dans mes modifications.
    Du coup voila ce que j'ai fait:
    Dans la partie PCK du tableau saisie j'ai séparé les partie"P1 et P2" de l'activité "régul hors résiliation" car la P1 est objectivé. j'ai modifié le tableau suivi hebdo en conséquence et la macro également et tout fonctionne.

    - Du coup j'ai réussi à fusionner la macro remplissage avec la calculette pour le tableau instances PCK et PDK j'ai donc modifié les colonnes dans la partie array des macros et la soit il prend les mauvaises colonnes pour completer le tableau instances et ne le compléte pas jusqu'au bout pour PCK et ne le compléte pas en entier pour PDK. Pourtant les colonnes nommées dans array sont les bonnes je ne comprends pas.

    -Les calculettes ne me renvoie plus la bonne reponse pourtant elle ont fonctionné... Exemple pour la premiere calculette (Pôle Régul) du tableau instances PCK il ne totalise pas bien les traités et les 1/2 journées affecté du pole dans le tableau hebdo. Si je clique sur le bouton pour compléter la semaine 15 avec en paramètre 2 dans la cellule V6 pour le nombre de semaine précedente donc totalise semaines 14 et 13 il devrait m'afficher 140 en traité et 17 en 1/2 journée affecté mais le résultat n'est pas bon.

    Cordialement,
    Fichiers attachés Fichiers attachés

  6. #46
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Bonjour,

    C'est loin... Est-ce que tu peux me préciser quelle macro fonctionne mal, ce qu'on devrait obtenir, dans quelle feuille et quelle cellule ?

    Désolé...
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  7. #47
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Les macros qui fonctionnent mal sont celles de l'onglet "Instances Pacifica" et "instances Prédica".

    En cliquant sur le bouton elle demande quelle semaine elle doivent chercher dans l'onglet "Suivi hebdo" pour compléter les entrés, les traités et les soldes du tableaux d'instances selon l'activité. J'ai fusionné les calulette avec cette macro pour n'avoir plus qu'un bouton. Avant de faire tourner la macro. Il faut compléter dans la cellule Nb semaines pour choisir combien de semaine précédentes ont veut totaliser à dorite du tableau instances. elle va chercher l'information du pôle correspondant dans l'onglet suivi hebdo zone productivité du pôle (3 calulettes pour Pck car 3 pôle) et une pour Pdk. Exemple pour la premiere calculette (Pôle Régul) du tableau instances PCK il ne totalise pas bien les traités et les 1/2 journées affecté du pole dans le tableau hebdo. Si je clique sur le bouton pour compléter la semaine 15 avec en paramètre 2 dans la cellule V6 pour le nombre de semaine précedente donc totalise semaines 14 et 13 il devrait m'afficher 140 en traité et 17 en 1/2 journée affecté mais le résultat n'est pas bon.

    Un peu brouillon comme explication....

    Cordialement,

    Pour les mêmes macro
    J'ai oublié de dire que les tableaux instances ne se compléte en entier également ou ne prennet pas les bonnes informations pourtant les colonnes sont correcetment nommées dans la fonction "array"

    -Le tableau instances PCK ne se complete pas en entier et les poles régul P1 et P n'affichent pas les bon résultat
    - Le tableau instaznces PDK ne se complete pas entier.

  8. #48
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Bonjour,

    Je fais une dernière tentative. Je ne peux pas perdre du temps à corriger ce que tu modifies. La feuille "Suivi Hebdo" a changé de format, le userform que j'avais ajouté a disparu etc. Je t'avais dit de bien cadrer ton projet avant de passer au développement. Si je n'ai pas corrigé rapidement, je mettrais fin à ce fil.
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  9. #49
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Oui il y a eu des modifications car le service demandeur m'a demandé des modifications, l'userform je l'ai conservé dans une autre version que je réintégrérai par la suite.
    Cordialement,

  10. #50
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Attention, seule la première calculette a été modifiée. Si le code est bon recopie-le pour les deux autres.
    PS. Je ne sais pas comment remplir la colonne "Objectif".

    http://cjoint.com/?EDyn12IiFnl
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  11. #51
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Merci,

    Je teste et je fais le nécessaire pour les autres calculettes et la feuille "PDK" La colonne "objectif" et "à faire" sont complétées manuellement donc c'est bon.
    Cordialement,

    La feuille PCK est opérationnelle,
    Je regarde pour faire la modif de "PDK" et je vais regarder ton code de la feuille "activité" qui ne fonctionne pas mais que je n'ai pas touché et après j'aurai terminé.
    Cordialement,

  12. #52
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    je vais regarder ton code de la feuille "activité" qui ne fonctionne pas
    Qu'est-ce qui ne fonctionne pas ? Une erreur ?
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  13. #53
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    En fait quand je clique sur le bouton elle tourne mais elle ne complète rien.
    Cordialement,

  14. #54
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Il faut peut-être que tu mettes les mêmes noms d'employés sur les feuilles "activité" et "planning" ?
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  15. #55
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Sur mon fichier j'ai les mêmes noms dans le même sur la feuille "Planning" et "activité" et ils sont dans le même ordre, j'ai même essayé en supprimant dans la feuille "activité" les lignes employé en cas de renfort à la fin mais rien ne se passe.
    Cordialement,

  16. #56
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Bonjour,

    Est-ce que tu pourrais me faire parvenir un classeur avec des données afin que je puisse tester ? Dans ce cas, supprime le classeur précédent (afin de ne pas surcharger inutilement les serveurs de DVP) ou utilise http://cjoint.com
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  17. #57
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Ci le dossier avec les premières semaines de l'année complété.
    http://cjoint.com/?3DBnGkGuTYY
    Cordialement,

  18. #58
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 56
    Points : 6
    Points
    6
    Par défaut
    Bon la macro fonctionne, mais elle n'affiche pas pour Betty, j'ai résolu le probleme pour Marie-Laure en faisant un copié collé du planning vers la feuille Activité et j'ai rajouté un l pour Emmanuelle que j'avais oublié.
    Cordialement,

    Bon tout fonctionne j'ai reussi aprés un éniéme copier coller...
    Je te remercie pour tout Daniel et encore c'est pas assez....
    Je te remercie également pour ta patience que j'ai usé jusqu'au bout....

    Trés Cordialement,

  19. #59
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 202
    Points : 14 353
    Points
    14 353
    Par défaut
    Sur la feuille Planning, il y a un espace après Betty PAILLE : "Betty PAILLE ".
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/03/2015, 12h04
  2. [XL-2010] Macro pour filtrer un TCD à partir d'une cellule
    Par Chrislezoud dans le forum Excel
    Réponses: 5
    Dernier message: 22/03/2013, 10h38
  3. [XL-2010] Macro pour renommer des fichiers à partir d'une liste de nom de fichiers
    Par thomahh dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 25/01/2013, 17h03
  4. macro pour créer plusieurs tcd à partir d'access
    Par 78580400 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/05/2011, 10h13
  5. Macro pour envoyer un mail à partir d'un formulaire
    Par aurore1008 dans le forum IHM
    Réponses: 2
    Dernier message: 17/06/2008, 16h16

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