[SIZE=2][COLOR=NAVY]Sub[/COLOR] Traitement()
[COLOR=GREEN]' myDearFriend! - 13/12/2006[/COLOR]
[COLOR=NAVY]Dim[/COLOR] F [COLOR=NAVY]As[/COLOR] Worksheet
[COLOR=NAVY]Dim[/COLOR] TabTemp [COLOR=NAVY]As Variant
Dim[/COLOR] Sal [COLOR=NAVY]As String
Dim[/COLOR] L [COLOR=NAVY]As Long[/COLOR], LL [COLOR=NAVY]As Long[/COLOR], C [COLOR=NAVY]As Integer[/COLOR], Cmax [COLOR=NAVY]As Integer[/COLOR]
[COLOR=GREEN]'Charge les données dans un tableau variant temporaire[/COLOR]
[COLOR=NAVY]With[/COLOR] Sheets("info")
L = .Range("A65536").[COLOR=NAVY]End[/COLOR](xlUp).Row
Cmax = .Range("A65536").[COLOR=NAVY]End[/COLOR](xlToRight).Column
TabTemp = .Range(.Cells(1, 1), .Cells(L, Cmax)).Value
[COLOR=NAVY]End With[/COLOR]
[COLOR=GREEN]'Pour chaque salarié[/COLOR]
[COLOR=NAVY]For[/COLOR] L = 2 [COLOR=NAVY]To UBound[/COLOR](TabTemp, 1)
[COLOR=Red]If TabTemp(L, 1) <> "" [/COLOR][COLOR=Red]Then[/COLOR] [COLOR=GREEN]'Trouver l'onglet[/COLOR]
Sal = TabTemp(L,[COLOR=Red]2[/COLOR])
[COLOR=NAVY]On Error Resume Next
Set[/COLOR] F = Sheets(Sal)
[COLOR=NAVY]On Error GoTo[/COLOR] 0
[COLOR=NAVY]If Not[/COLOR] F [COLOR=NAVY]Is Nothing Then
With[/COLOR] F
[COLOR=GREEN]'Effacer les anciennes valeurs[/COLOR]
.Range("C20:D65536").Delete
[COLOR=GREEN]'MAJ des données[/COLOR]
[COLOR=NAVY]For[/COLOR] C = [COLOR=Red]3 [/COLOR][COLOR=NAVY]To[/COLOR] Cmax
[COLOR=NAVY]If[/COLOR] TabTemp(L, C) > 0 [COLOR=NAVY]Then[/COLOR]
LL = .Range("C65536").[COLOR=NAVY]End[/COLOR](xlUp).Row + 1
.Cells(LL, 3).Value = TabTemp(1, C)
.Cells(LL, 4).Value = TabTemp(L, C)
[COLOR=GREEN]'Conserver l'affichage arrondi (en gardant la vraie valeur)[/COLOR]
.Cells(LL, 4).NumberFormat = "#,##0"
[COLOR=NAVY]End If
Next[/COLOR] C
[COLOR=NAVY]End With
Else[/COLOR]
MsgBox "je ne peux pas allouer le temps du salarie " & Sal & " car il n`a pas de timesheet"
[COLOR=NAVY]End If
Set[/COLOR] F = [COLOR=NAVY]Nothing
[COLOR=Red]End If[/COLOR]
Next[/COLOR] L
[COLOR=NAVY]End Sub[/COLOR][/SIZE]