aide correction macro (VBA)

tapha20

XLDnaute Occasionnel
bjr à tous

j'ai un problème avec cette macro, elle ne fonctionne pas, au moment ou je l'éxectue un message d'erreur VBA s'affiche: "Erreur de compilation: End Sub attendu"

je ne sais pas comment la corrigée.

Sub Macro1()
'
' Macro1 Macro
'
Function Compteur(CE_IR As String, segment As String, semaine As String) As Integer
Dim compt As Integer
compt = 0
For i = 2 To Sheets("Données").Range("A65536").End(xlUp).Row
If Sheets("Données").Range("B" & i).Value = CE_IR And Sheets("Données").Range("C" & i).Value = segment And Right(Sheets("Données").Range("F" & i).Value, 2) = semaine Then
compt = compt + 1
End If
Next i
Compteur = compt
End Function


End Sub

Quelq'un aurait une idée à me suggérer.

Merci

cordialement
 

tapha20

XLDnaute Occasionnel
Re : aide correction macro (VBA)

=SOMMEPROD((données!B2:B33="a")*(données!C2:C33="I C")*(données!F2:F33="la case ou tu afficheras ta semaine"), ça c'est ce que je cherche.

par contre ça: =ENT(MOD(ENT((B4-2)/7)+0.6;52+5/28))+1 /calcul de ta semaine =========> j'ai rien compris
 

eddy51

XLDnaute Occasionnel
Re : aide correction macro (VBA)

=ENT((A1-SOMME(MOD(DATE(ANNEE(A1-MOD(A1-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)

Il faut remplacer les 3 “A1″ par la date (04/06/2012) ou tu met ta date dans A1 et tu laisse A1.

Moi quand je le test sa me dit semaine 23 sa m'a l'air plutot correct a verifié sur calendrier.



Si tu galere lol , renvoie ton fichier au point ou il en est actuellement , j'essaie de pas allez trop vite je veut pas te perdrel ol
 
Dernière édition:

tapha20

XLDnaute Occasionnel
Re : aide correction macro (VBA)

re

je n'ai absolument pas compris la méthode,

est ce que tu peux mettre en pratique ton exemple dans le fichier.

Dsl j'essaye tjrs mais ça ne marche pas.

Cordialement
 

Pièces jointes

  • Doc.xls
    59 KB · Affichages: 43
  • Doc.xls
    59 KB · Affichages: 42
  • Doc.xls
    59 KB · Affichages: 43

eddy51

XLDnaute Occasionnel
Re : aide correction macro (VBA)

c'est elle qui te donne la semaine tu as juste a rajouté -1 a la fin comme j'ai fait la pour avoir la semaine derniere
=ENT((C3-SOMME(MOD(DATE(ANNEE(C3-MOD(C3-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)-1
 

tapha20

XLDnaute Occasionnel
Re : aide correction macro (VBA)

oui mais comment l'appliquer dans mon tableau de bord

=SOMMEPROD((données!B2:B33="a")*(données!C2:C33="I C")*(données!F2:F33="la case ou tu afficheras ta semaine"),

=ENT((C3-SOMME(MOD(DATE(ANNEE(C3-MOD(C3-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)-1


comment dois-je utilisr ces deux formule, est ce que c'est dans une une celulle ou pas???
 

eddy51

XLDnaute Occasionnel
Re : aide correction macro (VBA)

=ENT((C3-SOMME(MOD(DATE(ANNEE(C3-MOD(C3-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)-1

CETTE FORMULE TE DONNE LA SEMAINE OU ON EST -1 DONC LA SEMAINE DERNIERE
tu met dans une cellule(on va dire B2 simple exemple) cette formule comme sa tu seras sur quelle semaine tu travailles, ensuite


=SOMMEPROD((données!B2:B33="a")*(données!C2:C33="I C")*(données!F2:F33="B2"),


EXEMPLE

Tu auras pas besoin de remettre toutes tes cases a jour seulement celle de la semaine et toutes les cases se metteront a la semaine -1
 

eddy51

XLDnaute Occasionnel
Re : aide correction macro (VBA)

Finishhhhhhhh...

Donc comme j'ai dit !
A1 c'est la date que tu veut entrer
Par exemple tu veut une date precise tu la rentre , et si tu veut mettre la date du jour et prendre la semaine d'avant il te suffit simplement de rajouté -1 a la fin de la formule .

En C1 il t'affiche donc le numero de la semaine . soit 40 la car c'est la semaine 40 que j'ai utilisé pour testé .
ensuite j'ai teste si JEANF a fait du C4 en $C$1 ce qui signifie le contenu de la cellule C1 c'est dire semaine 40 , et il m'affiche 1 c'est donc bon.


Il te reste un truc a faire ,seulement rajouté une condition sur l'année 2012 2011 1900 car la il prend en compte que la semaine mais pa l'année dans l'aquelle elle est
 

Pièces jointes

  • Doc (3).xls
    57 KB · Affichages: 48
  • Doc (3).xls
    57 KB · Affichages: 44
  • Doc (3).xls
    57 KB · Affichages: 42

eddy51

XLDnaute Occasionnel
Re : aide correction macro (VBA)

Je suis gentil je te l'est meme fait lol

en E1 c'est l'année j'ai mis 2011 par default la il affiche 1 tu vera si tu met 2012 il affichera 0

Apres a toi de structuré tout sa comme tu en a envie
 

Pièces jointes

  • Doc (3).xls
    59.5 KB · Affichages: 48
  • Doc (3).xls
    59.5 KB · Affichages: 53
  • Doc (3).xls
    59.5 KB · Affichages: 52

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 165
Messages
2 085 880
Membres
103 009
dernier inscrit
dede972