B
bretsainclair
Guest
Bonjour,
Je ne me sors pas d'un problème... J'explique mon cas :
Dans une feuille "planning", j'ai des noms d'intervenants dans une colonne I et des durées d'intervention dans une autre (colonne S)
Parmi les intervenants, j'ai des techniciens et des experts. La liste des experts est contenue dans une colonne (ici, plage Z2:Z15, mais en réalité, cette liste devra être dans une autre feuille appelée "experts").
Je souhaite comptabiliser le nombre d'heures d'intervention des techniciens et des experts (dans une feuille "bilan, en D69 et D71 respectivement).
J'ai écrit cette macro mais j'ai 0 comme valeur correpondant au temps des experts... Savez vous comment faire pour que j'obtienne les bons résultats?
Peut-être la fonction Application.Intersect(Cells(x, y), Plage) n'est pas appropriée?
Dim Plage As Range
Dim tech As Single
Dim experts As Single
Dim j As Integer
Sheets("Planning").Select
Set Plage = Range("Z2:Z15")
tech = 0
experts = 0
j = 2
While Cells(j, 3) <> "" 'tant que la ligne est non vide...
Set isect = Application.Intersect(Cells(j, 9), Plage)
If isect Is Nothing Then
tech = tech + Cells(j, 19)
Else
experts = experts + Cells(j, 19)
End If
j = j + 1
Wend
Sheets(bilan_name).Select
Cells(71, 4) = experts
Cells(69, 4) = tech
Voilà pour une première étape... ensuite il faudra aller chercher la liste des experts dans une autre feuille... et là, j'ai carrément un message d'erreur.
Merci de votre aide précieuse
Je ne me sors pas d'un problème... J'explique mon cas :
Dans une feuille "planning", j'ai des noms d'intervenants dans une colonne I et des durées d'intervention dans une autre (colonne S)
Parmi les intervenants, j'ai des techniciens et des experts. La liste des experts est contenue dans une colonne (ici, plage Z2:Z15, mais en réalité, cette liste devra être dans une autre feuille appelée "experts").
Je souhaite comptabiliser le nombre d'heures d'intervention des techniciens et des experts (dans une feuille "bilan, en D69 et D71 respectivement).
J'ai écrit cette macro mais j'ai 0 comme valeur correpondant au temps des experts... Savez vous comment faire pour que j'obtienne les bons résultats?
Peut-être la fonction Application.Intersect(Cells(x, y), Plage) n'est pas appropriée?
Dim Plage As Range
Dim tech As Single
Dim experts As Single
Dim j As Integer
Sheets("Planning").Select
Set Plage = Range("Z2:Z15")
tech = 0
experts = 0
j = 2
While Cells(j, 3) <> "" 'tant que la ligne est non vide...
Set isect = Application.Intersect(Cells(j, 9), Plage)
If isect Is Nothing Then
tech = tech + Cells(j, 19)
Else
experts = experts + Cells(j, 19)
End If
j = j + 1
Wend
Sheets(bilan_name).Select
Cells(71, 4) = experts
Cells(69, 4) = tech
Voilà pour une première étape... ensuite il faudra aller chercher la liste des experts dans une autre feuille... et là, j'ai carrément un message d'erreur.
Merci de votre aide précieuse