Comment créer un planning avec excel vba

Fermé
yassinefeki Messages postés 26 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 17 mai 2010 - 19 avril 2010 à 20:38
 Sanka - 29 avril 2014 à 09:39
Salut mes amis,

je cherche un exemple de code qui permet la création d'un planning automatique (de production par exemple ) en utilisant VBA sur excel.
Merci d'avance.

Cordialement
Yassine

A voir également:

7 réponses

yassinefeki Messages postés 26 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 17 mai 2010 10
21 avril 2010 à 23:44
salut mon ami,

mon problème c'est determiner la date de début de chaque tâche. En effet, j'ai toutes les durées d'exécution de chacune des tâches mais j'ai seulement la date de lancement des ordres de fabrications ( des articles ). Pour cela j'ai créée un algorithme qui permet l'ordonnancement de ces articles c'est à dire l'affectation des articles sur chaque machine dont le but est minimiser la durée totale des tâches. Alors maintenant j'ai besoin de tracer le diagramme de Gant.
Merci mon ami pour votre effort mais est ce que tu as une solution de ce genre de problème et merci une autre fois.
6
olorin.roy Messages postés 41 Date d'inscription mercredi 21 avril 2010 Statut Membre Dernière intervention 21 avril 2015 10
22 avril 2010 à 10:18
Pour ton besoin, j'ai regardé rapidement sur le net ce qu'il existait en macro pour faire du MRP, et j'ai trouvé 2 liens :

http://olivier.coma.free.fr/projets/mrp.pdf
http://www.webandmacros.net/download-excel-macros.asp

Ça devrait pouvoir t'aider.

Mais honnêtement, si tu veux faire de la gestion de production, passe à la GPAO, ça sera plus adapté qu'Excel.

Bon courage !
2
olorin.roy Messages postés 41 Date d'inscription mercredi 21 avril 2010 Statut Membre Dernière intervention 21 avril 2015 10
21 avril 2010 à 17:42
Bonjour,

Si tu as déjà toutes les dates et que tu cherches un affichage style Gantt, tu n'as pas besoin de faire de macro, la mise en forme conditionnelle suffit (je l'ai moi-même fait plusieurs fois).

Tu listes tes tâches, tu te crées ton calendrier sur la première ligne (fais de toutes petites colonnes), tu fais ta mise en forme conditionnelle en testant case par case si la date de la colonne est comprise entre le début et la fin de ta tâche, qui est sur la ligne.

Tu fais ça pour une case, tu reproduis la mise en forme partout et c'est parti. En plus, comme ce n'est que de la mise en forme, la mise à jour du planning est automatique.

J'espère que ça t'aide, sinon précise un peu plus ton besoin.
1
yassinefeki Messages postés 26 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 17 mai 2010 10
25 avril 2010 à 23:09
Merci mon ami pour votre effort.
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yassinefeki Messages postés 26 Date d'inscription vendredi 16 avril 2010 Statut Membre Dernière intervention 17 mai 2010 10
19 avril 2010 à 21:03
pas nécessairement de production juste un exemple pour m'aider de créer un planning avec VBA sur Excel.
0
mael5666 Messages postés 1 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 23 octobre 2013
23 oct. 2013 à 16:55
Bonjour,

J'ai un problème similaire. J'ai trouvé une formule me permettant de faire du formattage conditionnel, cependant compte tenu du nombre important de lignes et de colonnes cela alourdit considérablement le document et ralentit toutes les actions (malgré que ça soit excel 2010)...

Dans la colonne A, il y a les éléments pour lesquels j'ai une date de début (colonne B) et une date de fin (colonne C) renseignées.
J'ai un calendrier allant de janvier 2012 (colonne D) à décembre 2015 (colonne APE).

Quelle macro peut me permettre d'appliquer la formule pour toutes les dates du calendrier et pour toutes les lignes contenant des informations dans les colonnes A, en ne gardant que le résultat afin de ne pas alourdir ?

Merci pour votre aide.
0
Pas besoin de macro.
Il faut que ton planning soit en date au format date.
Ensuite avec une mise en forme conditionnelle du type :

= ET($B1>=D1;$C1<=D1)

Et tu applique ce format à toutes les cellules de ton callendrier.

Si tu veux une équivalence en macro ce serait:

for each cell in selection

if cell.value >= range("B" & (cell.row)).value and cell.value <= range("C" & (cell.row)).value

call format_tache()

endif

next


avant d'éxécuter tu selectionne la plage et pour format_tache tu enregistre une macro qui te met en forme la cellule.
0