La formule suivante me donne comme r=E9sultat le nombre de jours dans un
mois qu'un employ=E9 a entr=E9 des donn=E9es sur sa feuille excel, car les
dates sont en colonne A:
Sub JrsTravail()
Application.ScreenUpdating =3D False
Dim L As Long
With ActiveSheet()
If Range("A3").Value =3D "" Then Exit Sub
L =3D .Range("A65536").End(xlUp).Row
.Range("A3:A" & L).Name =3D "ZN"
.Range("G1").FormulaArray =3D "=3DSUM(IF(COUNTIF(zn,zn)=3D0,"""",1/
COUNTIF(zn,zn))*(MONTH(zn)=3DROW(G1)))"
.Range("G1:G12").FillDown
.Range("G1:G12") =3D .Range("G1:G12").Value
End With
end sub
Je peux donc savoir le nombre de jours o=F9 l'employ=E9 a =E9t=E9 pr=E9sent.=
Comment maintenant rajouter dans cette formule si aussi en colonne C
on retrouve le mot "Meeting"....
Donc, le r=E9sultat devant =EAtre le nombre de jours o=F9 l'employ=E9 f=FBt
pr=E9sent et qu'il a assist=E9 =E0 un meeting. N.B. que si l'employ=E9 a
assist=E9 =E0 deux meetings ou plus durant la journ=E9e, cela ne doit
compter que pour un......(C'est l=E0 la difficult=E9)...
La formule suivante me donne comme résultat le nombre de jours dans un mois qu'un employé a entré des données sur sa feuille excel, car les dates sont en colonne A:
Sub JrsTravail() Application.ScreenUpdating = False Dim L As Long With ActiveSheet() If Range("A3").Value = "" Then Exit Sub L = .Range("A65536").End(xlUp).Row .Range("A3:A" & L).Name = "ZN" .Range("G1").FormulaArray = "=SUM(IF(COUNTIF(zn,zn)=0,"""",1/ COUNTIF(zn,zn))*(MONTH(zn)=ROW(G1)))" .Range("G1:G12").FillDown .Range("G1:G12") = .Range("G1:G12").Value End With end sub
Je peux donc savoir le nombre de jours où l'employé a été présent. Comment maintenant rajouter dans cette formule si aussi en colonne C on retrouve le mot "Meeting"....
Donc, le résultat devant être le nombre de jours où l'employé fût présent et qu'il a assisté à un meeting. N.B. que si l'employé a assisté à deux meetings ou plus durant la journée, cela ne doit compter que pour un......(C'est là la difficulté)...
Merci pour votre temps
Denys
Ajoute une plage nommée à ta procédure :
L = .Range("A65536").End(xlUp).Row
.Range("A3:A" & L).Name = "ZN"
.Range("C3:C" & L).Name = "ZN1" 'Ajouter
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
c69777e5-d8c7-4c9f-b260-d90e9adffffc@u10g2000prn.googlegroups.com...
Bonjour à tous,
La formule suivante me donne comme résultat le nombre de jours dans un
mois qu'un employé a entré des données sur sa feuille excel, car les
dates sont en colonne A:
Sub JrsTravail()
Application.ScreenUpdating = False
Dim L As Long
With ActiveSheet()
If Range("A3").Value = "" Then Exit Sub
L = .Range("A65536").End(xlUp).Row
.Range("A3:A" & L).Name = "ZN"
.Range("G1").FormulaArray = "=SUM(IF(COUNTIF(zn,zn)=0,"""",1/
COUNTIF(zn,zn))*(MONTH(zn)=ROW(G1)))"
.Range("G1:G12").FillDown
.Range("G1:G12") = .Range("G1:G12").Value
End With
end sub
Je peux donc savoir le nombre de jours où l'employé a été présent.
Comment maintenant rajouter dans cette formule si aussi en colonne C
on retrouve le mot "Meeting"....
Donc, le résultat devant être le nombre de jours où l'employé fût
présent et qu'il a assisté à un meeting. N.B. que si l'employé a
assisté à deux meetings ou plus durant la journée, cela ne doit
compter que pour un......(C'est là la difficulté)...
La formule suivante me donne comme résultat le nombre de jours dans un mois qu'un employé a entré des données sur sa feuille excel, car les dates sont en colonne A:
Sub JrsTravail() Application.ScreenUpdating = False Dim L As Long With ActiveSheet() If Range("A3").Value = "" Then Exit Sub L = .Range("A65536").End(xlUp).Row .Range("A3:A" & L).Name = "ZN" .Range("G1").FormulaArray = "=SUM(IF(COUNTIF(zn,zn)=0,"""",1/ COUNTIF(zn,zn))*(MONTH(zn)=ROW(G1)))" .Range("G1:G12").FillDown .Range("G1:G12") = .Range("G1:G12").Value End With end sub
Je peux donc savoir le nombre de jours où l'employé a été présent. Comment maintenant rajouter dans cette formule si aussi en colonne C on retrouve le mot "Meeting"....
Donc, le résultat devant être le nombre de jours où l'employé fût présent et qu'il a assisté à un meeting. N.B. que si l'employé a assisté à deux meetings ou plus durant la journée, cela ne doit compter que pour un......(C'est là la difficulté)...
Merci pour votre temps
Denys
Denys
On 20 mar, 09:57, "MichDenis" wrote:
Ajoute une plage nommée à ta procédure : L = .Range("A65536").End(xlUp).Row .Range("A3:A" & L).Name = "ZN" .Range("C3:C" & L).Name = "ZN1" 'Ajouter
Pour une rare fois, cela ne fonctionne pas. Excel me dit "Unable to set the Formula Array property of the range class". Run time error 1004.
Pourtant, le range est le même (si cela a quelque chose à voir)
Je suis allé effacer les plages ZN et ZN1, j'ai recommencé, mais avec le même résultat.... j'ai aussi essayé ZN1=$I$12 sans résultat.... ..
Merci
Denys
Denys
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit:
En G1 j'ai comme réponse 0.365 (janvier) en G2 0.25 (février) en G11 5.36 (novembre) en G12 2.04 (décembre)
Notre feuille de travail commence en novembre....... Comment peut-on interpréter ces résultats????
Merci
Denys
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre
de formule et que je fais Control Shift Enter (matricielle),
j'obtiens ce qui suit:
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ... Je quitte et ne serai plus disponible ...!
"Denys" a écrit dans le message de news:
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ...
Je quitte et ne serai plus disponible ...!
"Denys" <denys.perreault@rbc.com> a écrit dans le message de news:
9066fc77-6942-4dff-bdce-b44400539653@d4g2000prg.googlegroups.com...
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre
de formule et que je fais Control Shift Enter (matricielle),
j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ... Je quitte et ne serai plus disponible ...!
"Denys" a écrit dans le message de news:
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ... Je quitte et ne serai plus disponible ...!
"Denys" a écrit dans le message de news:
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ...
Je quitte et ne serai plus disponible ...!
"Denys" <denys.perrea...@rbc.com> a écrit dans le message de news:
9066fc77-6942-4dff-bdce-b44400539...@d4g2000prg.googlegroups.com...
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre
de formule et que je fais Control Shift Enter (matricielle),
j'obtiens ce qui suit:
Et avec un test très sommaire, cela a l'air de fonctionner ... Je quitte et ne serai plus disponible ...!
"Denys" a écrit dans le message de news:
Pourtant, si j'entre la formule suivant "à la mitaine" dans la barre de formule et que je fais Control Shift Enter (matricielle), j'obtiens ce qui suit: