Calcul à partir d'une date

manuSP Messages postés 80 Statut Membre -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

Je ne trouve pas la formule pour mon problème qui est le suivant :

j'ai 4 feuilles identiques ( ACC - SAP - INC - OPD ) dans ces feuilles j'ai la date qui s'inscrit dans la colonne B et le jours dans la colonne C ( grâce à un formulaire de saisie).

Dans une autre feuille j'aimerais compter le nombre de Lundi par exemple sur les feuilles en fonction de la date (colonne B), et par mois.

Voilà merci de votre aide

27 réponses

manuSP Messages postés 80 Statut Membre
 
Donc, j'ai bien fait un copier coller sur un module.
Les coordonnées du tableaux sont identiques.
Le lundi se trouve en A2
et les dates sur les colonnes B.

La seule différence se situe au niveau de la ligne, dans mes 4 feuilles de recueil d'infos je commence sur la ligne 3 et non sur la 2.
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Beh voilà...
Tu change le 2 de
For L = 2 To Sheets(S)....

par un 3
Tu dis..
0
manuSP Messages postés 80 Statut Membre
 
c'est fait, ça me marque tjs #VALEUR!
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Comme ça, sans le classeur c'est pas possible de continuer.
Eventuellement mettre le classeur sur Cjoint et me communiquer le lien par MP
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
manuSP Messages postés 80 Statut Membre
 
ok merci c'est sympa je vais t'envoyer ça
0
lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Modifie la macro..
Public Function SommeFeuille() As Long
Dim Jour As Integer, Mois As Integer, Total As Long, S As Integer
Dim TB, Ch As String, L As Long, Nom As String
    Application.Volatile
    TB = Array(" ", "LUNDI", "MARDI", "MERCREDI", "JEUDI", "VENDREDI", "SAMEDI", "DIMANCHE")
    Jour = Application.Caller.Row - 1 '1 = Lundi, 2 = mardi, etc..
    Mois = Application.Caller.Column - 2 '1=janvier
    Ch = TB(Jour)
    For S = 1 To Sheets.Count
        Nom = Sheets(S).Name
        If Nom = "ACC" Or Nom = "OPD" Or Nom = "SAP" Or Nom = "INC" Then
            For L = 3 To Sheets(S).Range("C65535").End(xlUp).Row
                If Month(Sheets(S).Cells(L, 2)) = Mois Then
                    If UCase(Sheets(S).Cells(L, 3)) = Ch Then Total = Total + 1
                End If
            Next L
        End If
    Next S
    SommeFeuille = Total
End Function

J'ai tester sur ton classeur et ça fonctionne, comme quoi.. les exemple sont pas toujours conforme à la réalité.
A+
0
manuSP Messages postés 80 Statut Membre
 
Merci pour ton aide, c'est très sympa...

Peux tu me rendre un dernier service ? j'aimerais savoir comment faire pour que se soit ma page d'accueil qui s'affiche tjs en 1er ?
0