Création automatique d'un planning par semaine depuis une liste de donnée
Bonjour à tous,
Il s'agit là de mon tout premier post sur ce forum. J'ai passé quelques heures sur internet à chercher une solution ou un code équivalent mais en vain malheureusement.
Je rencontre actuellement des difficultés à créer un fichier excel "automatisé", pour le boulot. En effet, nous avons une liste de matériel (type grues, etc) que nous listons dans un premier onglet. Pour chaque matériel ,on y indique une date de départ sur chantier, et une date de retour de chantier.
Ce que je souhaite, c'est que dans un deuxième onglet, les données de livraison soient affichées par semaine, type :
Semaine 1 :
aaa date
xxx date
vvv date
Semaine 2 :
bbb date
eee date
zzz date
J'ai donc plusieurs problèmes :
- il faut que je puisse garder la mise en page de l'onglet 2 (voir fichier joint) et simplement ajouter les lignes
- pour chaque semaine, il faut que ce soit listé par ordre de date croissante
- il ne s'agit pas de copier/insérer la ligne entière mais seulement quelques colonnes de cette ligne
- l'onglet 1 est vivant et nous ajoutons régulièrement des données dedans
Pour le moment, j'ai trouvé ce code, que j'ai tenté d'adapter :
Option Explicit
Sub LancementListing1()
Dim Lastli As Integer, rCell As Range
Lastli = Sheets("PLANNING PAR PUISSANCE et TYPE").Cells(1, 1).End(xlDown).Row
For Each rCell In Sheets("PLANNING PAR PUISSANCE et TYPE").Range("V7:V" & Lastli)
'Si valeur cellule égale E7 de Feuil2
If rCell = ActiveSheet.Range("E7") Then
'Alors insérer une ligne en ligne 8
With ActiveSheet
.Rows("8:8").Insert Shift:=xlDown
'Copy les données de la colonne 3 Feuille 1 correspondantes
With .Cells(8, 1)
.Value = Sheets("PLANNING PAR PUISSANCE et TYPE").Cells(rCell.Row, 3).Value
End With
With .Cells(8, 2)
.Value = Sheets("PLANNING PAR PUISSANCE et TYPE").Cells(rCell.Row, 5).Value
End With
End With
End If
Next rCell
End Sub
Cela me permet de tester si je peux déja copier toutes les livraisons de la semaine 1 et les afficher en semaine 1 sur l'onglet 2, en ne sélectionnant que 2 données à copier.
Néanmoins, aucun moyen de faire fonctionner le code, et j'avoue ne pas m'y connaître assez pour identifier l'erreur.
Ensuite, si cela marche, je ne vois pas comment je pourrai faire la même chose pour la semaine 2 sachant que le bloc semaine 2 n'aura plus le même numéro de ligne une fois les données ajoutées pour la semaine 1.
Avez-vous une idée sur la façon de procéder? Egalement une idée sur ce qui ne marche pas dans mon bout de code?
En vous remerciant par avance, j'avoue que je sèche totalement là.
Pierre
Bonjour et bienvenue sur le forum
Tu écris :
En fait, j'ai beau écarquiller les yeux, je ne vois rien de joint.... il faut que je puisse garder la mise en page de l'onglet 2 (voir fichier joint)... et
Tu as dû faire une fausse manip.
Bye !
Bonjour,
Étrange car j'avais justement dû réduire la taille du fichier pour que ça passe. Fausse manip' sûrement au moment de valider. Le voici joint.
Merci pour votre réponse en tout cas
Pierre
Bonjour
Le tableau que tu as en Feuil2 a des titres qui ne correspondent manifestement pas aux données qu'on trouve dans leur colonne.
Du coup, on ne sait à quoi s'en tenir...
Bye !