Bonjour,
j'ai un gros souci avec ma macro. Merci de m'aider à la faire marcher.
Contexte : J'ai un planning qui sur chaque ligne a comme données d'entrée les initiales du projet, les agents puis j'ai une zone calendaire (découpage en démi semaine sur 2 ans ) qui me permet d'affecter le numéro des agents pour chaque tâche/ligne créée)
Pbm1 : Le code en l'état actuel me met "Erreur d'exécution 13"
Pbm2 : Comment se servir des listes créées dans le gestionnaire de noms dans mon code VBA, puisque j'ai tableau planning dont les lignes s'incrémentent au fur et à mesure d'où la nécessité d'avoir une déclaration ne prenant pas en compte les repères Excel
Voici le code que j'ai rédigé
Option Explicit
Option Base 1
Sub PlanningAgent()
Dim NomAgents() As Variant
Dim Planning() As Variant
Dim TestPlanning() As Variant
Dim AgentsPlanning() As Variant
Dim InitialesProjets() As Variant
Dim H As Byte
Dim I As Byte
Dim J As Byte
'Récupération de données
NomAgents = Sheets("Listes").Range("Q3:Q18")
Planning = Sheets("Planning_PR").Range("S8:HR29")
AgentsPlanning = Sheets("Planning_PR").Range("R8:R29")
InitialesProjets = Sheets("Planning_PR").Range("B8:B29")
ReDim TestPlanning(UBound(NomAgents, 1), UBound(Planning, 2))
'Rechercher les projets de chaque Agent par demi-semaine de planning
For H = 1 To UBound(Planning, 2)
For I = 1 To UBound(NomAgents, 1)
For J = 1 To UBound(Planning, 1)
If ((Planning(J, H) <> 0) And (AgentsPlanning(J, H) = NomAgents(I))) Then
TestPlanning(I, H) = InitialesProjets(J, 1) & TestPlanning(I, H)
End If
Next J
Next I
Next H
'Afficher les valeurs trouvées dans le fichier prévu
Sheets("Planning_Ag").Select
Sheets("Planning_Ag").Range("C8:HB22") = TestPlanning
'Effacer les données du tableau
Erase TestPlanning
End Sub