Bobleesouf
XLDnaute Nouveau
Salut!
Ce que je cherche exactement c'est afficher la dernière résultats de chaque PR pour chaque agents ?
et s'il est possible afficher la date dans chaque cellules (option non obligatoire).
et merci d'avance.
Dans un forum ils m'ont donnés ce code, mais je veux l'adapter si les tableaux des agents ne se trouvent pas sur le même ficher :
Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim PL(1 To 3) As Range 'déclare le tableau de 3 variables (PLages)
Dim PLR As Range 'déclare la variable PLR (PLage des Résultats)
Dim A As Byte 'déclare la variable A (Agent)
Dim PR As Byte 'déclare la variable PR
Dim COL As Integer 'déclare la variable COL (COLonne)
Set O = Worksheets("Feuil2") 'définit l'onglet O
Set PL(1) = O.Range("B3:F8") 'définit la plage PL(1)
Set PL(2) = PL(1).Offset(0, 7) 'définit la plage PL(2)
Set PL(3) = PL(2).Offset(0, 7) 'définit la plage PL(3)
Set PLR = O.Range("B14:F16") 'définit la plage PLR
For A = 1 To 3 'boucle 1 : sur les 3 lignes des agents
For PR = 1 To 5 'boucle 2 : sur les 5 lignes des PR
For COL = 5 To 1 Step -1 'boucle inversée 3 : sur les 5 colonnes des dates en partant de la dernière
If PL(A).Cells(PR + 1, COL).Value <> "" Then 'condition : si la valeur de la cellule en ligne PR, colonne COL de la plage PL(A) n'est pas vide
PLR(A, PR) = PL(A).Cells(1, COL) 'renvoie dans la cellule ligne A colonne PR de la plage PLR la date correspondante
PLR(A, PR).Interior.Color = PL(A).Cells(PR + 1, COL).DisplayFormat.Interior.Color 'récupère la couleur de la MFC
PLR(A, PR).NumberFormat = "dd/mm/yyyy" 'formate la date
Exit For 'sort de la boucle 3
End If 'fin de la condition
Next COL 'prochaine colonne de la boucle 3
Next PR 'prochaine ligne de la boucle 2
Next A 'prochaine ligne de la boucle 3
End Sub
Ce code ça marche bien pour mon 1er exemple (Les tableaux se trouvant sur la même feuille), maintenant je veux l'adapter pour le cas (Les tableaux des PR de agents sont séparés)
Merçi d'avance
Ce que je cherche exactement c'est afficher la dernière résultats de chaque PR pour chaque agents ?
et s'il est possible afficher la date dans chaque cellules (option non obligatoire).
et merci d'avance.
Dans un forum ils m'ont donnés ce code, mais je veux l'adapter si les tableaux des agents ne se trouvent pas sur le même ficher :
Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim PL(1 To 3) As Range 'déclare le tableau de 3 variables (PLages)
Dim PLR As Range 'déclare la variable PLR (PLage des Résultats)
Dim A As Byte 'déclare la variable A (Agent)
Dim PR As Byte 'déclare la variable PR
Dim COL As Integer 'déclare la variable COL (COLonne)
Set O = Worksheets("Feuil2") 'définit l'onglet O
Set PL(1) = O.Range("B3:F8") 'définit la plage PL(1)
Set PL(2) = PL(1).Offset(0, 7) 'définit la plage PL(2)
Set PL(3) = PL(2).Offset(0, 7) 'définit la plage PL(3)
Set PLR = O.Range("B14:F16") 'définit la plage PLR
For A = 1 To 3 'boucle 1 : sur les 3 lignes des agents
For PR = 1 To 5 'boucle 2 : sur les 5 lignes des PR
For COL = 5 To 1 Step -1 'boucle inversée 3 : sur les 5 colonnes des dates en partant de la dernière
If PL(A).Cells(PR + 1, COL).Value <> "" Then 'condition : si la valeur de la cellule en ligne PR, colonne COL de la plage PL(A) n'est pas vide
PLR(A, PR) = PL(A).Cells(1, COL) 'renvoie dans la cellule ligne A colonne PR de la plage PLR la date correspondante
PLR(A, PR).Interior.Color = PL(A).Cells(PR + 1, COL).DisplayFormat.Interior.Color 'récupère la couleur de la MFC
PLR(A, PR).NumberFormat = "dd/mm/yyyy" 'formate la date
Exit For 'sort de la boucle 3
End If 'fin de la condition
Next COL 'prochaine colonne de la boucle 3
Next PR 'prochaine ligne de la boucle 2
Next A 'prochaine ligne de la boucle 3
End Sub
Ce code ça marche bien pour mon 1er exemple (Les tableaux se trouvant sur la même feuille), maintenant je veux l'adapter pour le cas (Les tableaux des PR de agents sont séparés)
Merçi d'avance