XL 2016 Macro pour copiage conditionnel d'une feuille sur une autre

rviellevoye

XLDnaute Nouveau
Bonjour,

Je vous remercie de prendre le temps de lire ce message. Je m'excuse d'avance si je n'utilise pas un vocabulaire adéquat mais je vais tâcher de me faire comprendre du mieux que je peux.

J'ai créé un classeur Excel contenant plusieurs feuilles (cf pièce jointe).
La première feuille intitulée "salle" est composée de 5 blocs de 7 lignes (p ex lignes 3 à 9, 10 à 16,... dans le fichier joint) et est destinée à être complétée de plusieurs informations entrée manuellement ou issues de formules pré-établies (cellules vertes). Une de ces informations est un liste déroulante de prénoms (cellules bleus B9, B16, B23,...).
Je souhaiterais que, lorsque je choisis un prénom dans cette liste, l'entièreté du bloc de 7 lignes soit automatiquement copié sur la feuille du classeur intitulée par le prénom correspondant.

Exemple : le premier "bloc" (lignes 3 à 9) doit être copié sur la feuille "Laura", le second "bloc" (lignes 10 à 16) sur la feuille "Virginie", le troisième (lignes 17 à 23) également sur la feuille "Laura" à la suite du premier bloc,...etc...

D'avance merci pour vos pistes/conseils.
Renaud
 

Pièces jointes

  • Feuille suivi.xlsx
    24.1 KB · Affichages: 53

belkacem_64

XLDnaute Junior
Salut
Cela peut être utile


Sub Copy_All()

Dim i As Integer, M As Integer
Application.ScreenUpdating = False

For i = 9 To 30 Step 7
Range(Cells(i, "B").Offset(-5, -1), Cells(i, "B").Offset(, 8)).Copy
M = Sheets(CStr(Cells(i, "B"))).Cells(Rows.Count, "A").End(xlUp).Row
Sheets(CStr(Cells(i, "B"))).Range("A" & M).PasteSpecial (xlPasteAll)
M = M + 1
Next
Application.ScreenUpdating = True

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 104
Messages
2 085 347
Membres
102 868
dernier inscrit
JJV