Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

aide correction macro (VBA)

  • Initiateur de la discussion Initiateur de la discussion tapha20
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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
 
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
 
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:
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

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)

oui cette formule marche très bien, par contre en quoi je vais m'en servir pour atteindre mon but????
 
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
 
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???
 
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
 
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

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

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
527
Réponses
4
Affichages
733
Réponses
5
Affichages
910
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…