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 :

planning de production


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 52
    Points : 18
    Points
    18
    Par défaut planning de production
    Bonjour à tous,
    Je cherche à résoudre le problème suivant et je ne sais pas comment m'y prendre.
    Sur une même feuille (voir fichier ci-joint) j'ai :
    - des Ordre de Fabrication avec une date et heure de départ et une date et heure de fin pour chaque ligne de fabrication
    - un planning avec en abscisse les dates et heures (la maille est l'heure) et en ordonnée les lignes de fabrication
    Comment coloriser, en automatique, le planning à partir des ordres de fabrication en fonction de critères de couleurs définis dans la feuille.

    Voir mon fichier et voici le résumé de ma problématique:
    Si pour une cellule du planning:
    - la valeur de la ligne 10 correspondante est comprise entre les valeurs de la colonne D et E
    - et que le libellé de la colonne K correspondante est égal au libellé de la colonne G
    Alors "colorisation" de la cellule en fonction des critères définis en haut à gauche

    Merci d'avance pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Voila une solution partiel avec des mise en forme conditionnelle.

    Je dis partiel car il manque la gestion des chevauchement, ça risque de pas être simple à faire d’ailleurs.

    ++
    Qwaz
    Fichiers attachés Fichiers attachés

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 52
    Points : 18
    Points
    18
    Par défaut
    Bonsoir Qwaz,

    Merci pour ces formules de mise en forme conditionnelle cela correspond tout à fait à mon besoin.
    Concernant le chevauchement si c'est trop compliqué, j'ai la solution de signaler les chevauchements d'Of dans les colonne Début et Fin d'Of (D et E). J'ai trouvé une formule de mise en forme conditionnelle qui permet de mettre en rouge les chevauchements (cette formule est peut-être à simplifier).
    J'ai rajouté une colonne dans le tableau pour bien prendre en compte la date maxi de début d'of (+ mise en forme conditionnelle si la date de début d'of dépasse l'objectif).
    Pour que ce soit parfait il faudrait que le n° d'Of et le n° de référence apparaisse sur le planning. L'idéal serait de mettre ces informations dans la première cellule représentant l'Of sur le planning.
    Cela permettrait de visualiser rapidement l'Of sur le planning et comment le repositionner.
    Ci-joint le fichier avec modif.

    Merci d'avance
    Fichiers attachés Fichiers attachés

  4. #4
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Je regarderai demain, j'avais eu une idée hier soir en me couchant, je la testerais.

    Pour ton histoire de coloration dans le tableau de gauche, il y a plus simple je pense

    Deux MFC, appliquées sur 2 plages du tableau

    sur la plage

    $E$10:$E$24
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ET($D11<>"";$G11=$G10;$D11<$E10)
    $D$10:$D$24
    ++
    Qwaz

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 52
    Points : 18
    Points
    18
    Par défaut
    Ok pour les formules de MFC mais si les of ne sont pas classés par lignes de fab et dates de début d'of je pense que cela ne marche plus. A priori les of ne seront pas toujours dans cet ordre.
    A moins que l'on trouve une solution pour que le tableau se trie en permanence. Mais je pense que ce ne sera pas très fonctionnel, notamment, lorsque l'on sera en train de saisir les of.... Il faudrait attendre que toute la ligne de la colonne A à F soit remplie avant de faire un tri auto...

  6. #6
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Voila une solution
    Ajoute ce code dans la feuille1
    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
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim TheCell As Range
     
    'On verifie que le changement a lieu dans le tabeau d'action (TabActions)
    If Not Intersect(Target, Feuil1.ListObjects("TabActions").Range) Is Nothing Then
        'On regarde si la ligne du tableau impacté par la saisie est intégralement remplie
        For Each TheCell In Feuil1.Range("TabActions").Resize(1).Offset(Target.Row - 10)
            'Si une cellule n'a pas de contenu, on quitte
            If TheCell = "" Then Exit Sub
        Next
        'Si le code arrive ici, toutes les cellules ont un contenu
        'On desactive l'update de l'ecran
        Application.ScreenUpdating = False
        'On tri donc le tableau par n°Ligne et par date de début
        With Feuil1.ListObjects("TabActions").Sort
            With .SortFields
                .Clear
                .Add Key:=Range("TabActions[Poste]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
                .Add Key:=Range("TabActions[d et h début]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
            End With
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
     
        Application.ScreenUpdating = True
    End If
    End Sub
    Une autre solution serait de faire un UserForm par lequel la personne passerait pour ajouter des lignes dans le tableau. Au moment de la confirmation du UserForm, tu contrôles que les données saisies correspondent à une réalité et tu les ajoutes dans le tableau avant d'effectuer un tri comme dans le code précédent.

    ++
    Qwaz

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 52
    Points : 18
    Points
    18
    Par défaut
    Bonjour Qwaz,

    Pour le tri je trouve cela très bien avec ton code

    Reste le problème de l'affichage des OF sur le planning pour faciliter les modif et aussi pour la diffusion du planning après impression
    J'ai trouvé une formule qui permet de mettre, dans la première cellule d'affichage de l'OF le n° d'OF, le code produit et la quantité, mais forcément l'affichage est limité à la cellule car celle qui est à côté contient une formule...!
    Par contre lorque l'on fait un collage spécial valeur et que l'on efface les cellules qui ne contiennent pas de valeur le libellé complet est visible.
    Ne pourrait on pas pour tout mouvement dans le tableau : (?)
    copier la formule dans toutes les cellules du planning
    copier collage spécial valeur
    effacer toutes les cellules qui ne contiennent rien

    Qu'en penses tu ? Peux tu m'aider pour le code
    Ca m'intéresse toujours si tu as un idée sur le chevauchement dans le planning mais si c'est trop compliqué ce n'est pas grave...

    Autre problème :
    Mise en forme conditionnellle des couleurs ça fonctionne quand le début d'OF est entre 5 et 8 heures mais à partir de 9 heures l'affichage de la couleurest décalée d'1 heure ??? Je ne comprends pas pourquoi. J'ai modifié la formule des heures ligne 9 mais je ne vois pas où est l'erreur?
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Projet d'informatisation d'un planning de production
    Par kayo128 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/06/2011, 09h33
  2. [XL-2007] Planning de production
    Par Sliver dans le forum Excel
    Réponses: 7
    Dernier message: 20/02/2010, 15h11
  3. Script Planning de production
    Par cyril3d dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/03/2008, 09h43
  4. Planning de production
    Par cyril3d dans le forum Composants VCL
    Réponses: 2
    Dernier message: 09/03/2008, 13h13
  5. [A97] Planning de production
    Par JeremieT dans le forum Modélisation
    Réponses: 5
    Dernier message: 12/09/2007, 13h52

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