Planning à l'heure

Bonjour à vous les exceliens.

Je viens vers vous car je suis une buse sur Excel et j'aimerais programmé en VBA un gantt pour planifier le montage des meubles. Vous trouvez ci-dessous la mise en page de mon planning et je vous explique sous celle-ci ce que je souhaite programmer.

image

Alors, je tiens d'abord à préciser que la colonne durée est en heure.

J'aimerai programmé le fait que lorsque l'on met une durée (manuellement) attribuée à une personne (monteur), le nombre d'heure de montage se mette d'une couleur pour chaque personne différente. Ex pour Jacques sur la ligne 18, j'aimerai que lorsque je met "9" en F18, 9 cases se mettent en bleu à la suite de son ancien meuble.

J'aimerai créer un gantt dynamique ou je peux à tout moment changer soit le monteur, soit la durée du montage. (Les monteurs se sélectionnent via une liste déroulante et les durées se mettent automatiquement en fonction du nom du meuble)

N'hésitez pas à me poser des questions si vous n'avez pas compris :)

Merci d'avance

A+

Bonjour

Tu devrais joindre ton fichier....

Bye !

Je t'envoie ça ;)

122gantt-test1.zip (144.20 Ko)

A+

Un essai à tester. Te convient-il ?

61gantt-test1-v1.zip (136.81 Ko)
Option Explicit

Dim plMonteurs As Range, cell As Range, couleur
Dim col&

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("E11:E" & Range("E" & Rows.Count).End(xlUp).Row)) Is Nothing Then
        Application.EnableEvents = False
        Set plMonteurs = Sheets("Datas").Range("C2:C" & Sheets("Datas").Range("C" & Rows.Count).End(xlUp).Row)
        For Each cell In plMonteurs
            If Target.Offset(0, -1) = cell.Value Then
                couleur = cell.Interior.Color
                'col = Cells(Target.Row, Columns.Count).End(xlToLeft) + 1
                col = 6 + cell.Offset(0, 1).Value
                Range(Cells(Target.Row, col), Cells(Target.Row, col - 1 + Target.Value)) = Target.Value
                Range(Cells(Target.Row, col), Cells(Target.Row, col - 1 + Target.Value)).Interior.Color = couleur
                cell.Offset(0, 1) = cell.Offset(0, 1) + Target.Value
                Target.Offset(0, -1).Interior.Color = couleur
                Exit For
            End If
        Next cell
    End If
    Application.EnableEvents = True
End Sub

Bye !

Yes c'est un très bon début !!

J'ai repéré 3 problèmes :

- Lorsque je modifie un prénom (par exemple je suis passé de Thibault à Richard DC sur la D16) la couleur ne se change pas. L'objectif est de pouvoir modifier quand je veux les noms ainsi que la durée. Egalement il faut que l'ancienne barre se supprime

- Si je modifie la durée, ce n'est pas la barre qui va se modifier mais ça va créer une deuxième barre de la durée ajoutée (Ex: Pour cédric si je modifie sa durée de 4 à 3h, une nouvelle barre de 3 case va s'ajouter à la suite de sa barre actuelle)

- Si j'intègre une nouvelle ligne entre 2 lignes existantes,(Là j'a intégré la ligne 20) lorsque je rentre les informations j'aimerai que les2h viennent se caler avant les 6h car la ligne est avant. En gros, décaler la ligne 21 par rapport à la nouvelle ligne (pas évident je pense 🤔)

image

(J'ai rajouté une colonne avancement (en F) à modifier manuellement pour avoir une vision globale sur l'avancement du bateau. )

Sais-tu comment je pourrai faire pour mettre les dates et les heures automatiquement sachant que le vendredi nous travaillons que 4h ? (En comptant les jours fériés)

Merci

A+

Bonjour,

J'imagine que mes problèmes sont sans doute trop compliqués à résoudre. Pas grave je vais m'arranger autrement (Sauf si quelqu'un à une proposition plus simpliste à proposer) :)

Merci pour l'aide ;)

Sauf si quelqu'un à une proposition plus simpliste à proposer

Un planning d'activités à l'heure ici =>

https://www.excel-pratique.com/fr/telechargements/plannings/planning-activites-excel-no440

Merci pour la proposition, mais ça ne correspond pas vraiment à ce que je souhaite. J'ai oublié de préciser que j'ai environ 80 meubles à monter par 7 personnes. C'est pour cela que je cherche à créer un logiciel facile d'utilisation et surtout quelque chose d'extrêmement modulable (Pouvoir changer l'ordre des priorités, du monteur, la réf du meuble etc...)

Rechercher des sujets similaires à "planning heure"