Bonjour à tous,
Mes meilleurs vœux pour cette nouvelle année.
Je vous remercie d'avance de l'attention que vous porterez à ma demande.
Je travaille sur un fichier qui a plusieurs feuilles.
Feuille 1 = Base formation
Matricule salarié | Nom formation | Uniformisation Nom | Organisme de formation | Date de stage | Date fin de stage | Nombre d'heures
Feuille 2 = Base salariés
Matricule salarié | service du salarié | Nom | Prénom | ...
Feuille 3 = Support ADM
Cette feuille est une mise page des informations des bases Formation et Salariés. L'objectif de cette feuille est d'être exportée en version pdf.
Voici ce que je réalise actuellement, je filtre la base salariés pour trouver les salariés identifiés comme "ADM"
Je prends le premier, j'identifie son matricule et grâce a celui-ci je recherche dans la base formation les formations qu'il a réalisé.
Mon objectif final est de reporter une partie des informations des formations qu'il a effectuées dans la feuille 3 Support ADM a un endroit précis.
Je souhaite reporter uniquement le nom de la formation, la date de début et la date de fin à la condition que la date de début formation est inférieure à deux ans par rapport à la date d'aujourd'hui.
Je souhaite reporter ces trois informations concaténées dans la feuille 3 à partir de la cellule A34. J'ai laissé 12 lignes vides pour cela.
Voici mes problématiques :
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
31
32
33
34
35
36
37
38
39
40 Sub adm_support_concatener() WBO = ActiveWorkbook.Name 'aller sur la base Sheets("Base salariés et entretien").Select 'Identification de la dernière ligne D_L = Range("A65536").End(xlUp).Row I = 2 J = 1 K = J + 2 Do While I <= D_L statut = Cells(I, K).Value If Cells(I, J).Value <> Cells(I - 1, J).Value And statut = "ADM" Then MATRICULE = Cells(I, J).Value Sheets("Support ADM").Select Range("F1") = MATRITUCLE Sheets("Base formation").Select ActiveSheet.AutoFilterMode = False Range("A1").AutoFilter Field:=1, Criteria1:=MATRICULE Selection.SpecialCells(xlCellTypeVisible).Select End If I = I + 1 Loop End Sub
Actuellement je bloque à partir de mon filtre auto pour copier la sélection filtrée vers ma feuille 3 car ma sélection filtrée doit être conditionnée par la date de formation qui doit être inférieure à deux ans par rapport à aujourd'hui.
Ensuite pour coller les formations je ne sais pas comment "écrire"/"coder" pour chaque ligne de formation aille dans les lignes prévues dans la feuille Support ADM à partir de cellule A34.
Je suis preneuse de toute aide que vous pouvez m'apporter surtout de votre expérience pour améliorer ma façon de coder, j'ai appris en lisant des bouts de code sur ce forum. Je suis bien consciente de mon néophysme, j'ai encore beauuuuuucoup a apprendre pour faire correctement.
J'espère avoir été assez claire, vous trouverez le fichier Excel attaché à mon message, et vous remercie encore pour tout aide que vous pourrez m'apporter.
Partager