projet de planning avec excel

EXCELMAN57050

XLDnaute Nouveau
Bonjour à tous,

je suis novice sur Excel et je dois réaliser pour mon job un planning de réalisation travaux.
Je sais ce que je souhaite obtenir(cf fichier joint) mais ne sais pas comment m'y prendre pour le réaliser et si cela est réalisable.

Merci de votre aide sur le sujet
 

Pièces jointes

  • projet planning travaux.xls
    20.5 KB · Affichages: 5 185

chris

XLDnaute Barbatruc
Re : projet de planning avec excel

Bonjour

Merci pour la pj, c'est pas mal mais est ce que le commentaire de la cellule planning s'affiche automatiquement par le biais de la macro où est ce l'utilisateur qui doit le taper?

Il suffit de tester pour le savoir.

Merci à BOISGONTIER pour cet exemple très intéressant.
 

dlambert

XLDnaute Nouveau
Re : projet de planning avec excel

Bonjour,
"A l'AIDEEEEEEE"...après plusieurs recherches sur le net votre site ma convaincu et je pense trouver réponse avec vous.
Mais je n'arrive pas à modifier vos codes pour avoir un résultat de ce que je voudrais.
Voici mon problème, qui est de créer un planning à partir d'une feuille de base:


Ma fauille ("TESTCODE")--> il y'a 4 colonnes
-Colonne "A"= code alpha numérique=sousVBA(qname)
-Colonne "B": des dates, qui correspondent à une date de début=sousVBA(qdb)
-Colonne "C": des dates, qui correspondent à une date de fin=sousVBA(qdf)
-Colonne "D": valeurs numériques=sousVBA(qqty)
Sous cette feuille un code peut avoir plusieurs "qdb" et "qdf" les unes à la suite des autres sans se chevaucher.

===> Mon but final, c'est de ranger ces informations dans une autre feuille qui constitue mon planning et son nom est ("planning rotation"). Ces informations seront rangées dans une plage en fonction de deux critères:
-Colonne "B"--> Range( "B11:B359"): renferment les codes de la colonne "A" de la feuille("TESTCODE"), certaines lignes sont vides. et les codes rangés au pif selon mon desir; =sousVBA(qnom).
-Ligne(7)--> Range("XM7:BID7"): renfermant des dates =sousVBA(qdate).

La plage de rangement des données est ("XM11:BID359"), les valeurs se rangent en fonction de ces critères
--->"qnom"="qname"
--->"qdate">="qdb"
--->"qdate"<="qdf"
---Alors donne la valeur qui correspond aux critères de la colonne "qqty" de la feuille ("TESTCODE").

Avec la formule "Sumifs" je trouve mon compte mais le temps de reponse est de 25mn.


Code:
Sub remplirlignes()
Application.ScreenUpdating = False
Dim start As Single
start = Timer
With Sheets("Planning rotation")
  .Range("XM11:BID359").FormulaR1C1 = _
        "=SUMIFS(TESTCODE!C4,TESTCODE!C1,RC20,TESTCODE!C2,""<=""&R7C,TESTCODE!C3,"">=""&R7C)"
  .Range("XM11:BID359") = .Range("XM11:BID359").Value 'ici tu ne reprends que les valeurs
End With
Application.ScreenUpdating = True
MsgBox "durée du traitement: " & Timer - start & " secondes"
 
End Sub
 

dlambert

XLDnaute Nouveau
Re : projet de planning avec excel

Bonjour,
Quelqu'un peut-il m'expliquer ce code ci-dessous, je voudrais l'appliquer sur mon fichier mais j'ai une erreur.

Merci.


Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
debPlan = DateSerial([année], 1, 1)
Set fbd = Sheets("bd")
Set fplan = Sheets("planSem1VBA")
[B4:FZ23].ClearContents
[B4:FZ23].Interior.ColorIndex = xlNone
nblignes = fbd.[A1].CurrentRegion.Rows.Count
For i = 2 To nblignes
nom = fbd.Cells(i, 1)
Set result = fplan.[A:A].Find(What:=nom, LookIn:=xlValues)
If Not result Is Nothing Then
If fbd.Cells(i, 3) < DateSerial([année], 7, 1) Then
début = fbd.Cells(i, 2) - debPlan + 2
fin = fbd.Cells(i, 3) - debPlan + 2
Stage = fbd.Cells(i, 4)
fplan.Cells(result.Row, début) = Stage
lig = result.Row
For d = début To fin
fplan.Cells(result.Row, d).Interior.ColorIndex = 6
Next d
End If
End If
Next i
End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16