Tâche mensuelle sur excel

Fermé
Romain - 19 mai 2008 à 19:17
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 21 mai 2008 à 14:07
Bonjour,

Je travail actuellement sur un tableau excel. Je souhaite intégrer à une cellule une formule qui permette d'afficher automatiquement une tâche chaque premier mercredi du mois.

Exemple : pour la feuille du mercredi 4 juin (date inscrite dans une cellule), " vérification de tel matériel" s'inscrit automatiquement dans une cellule de mon choix.

Cette fonction est-elle possible?

Merci pour votre aide
A voir également:

6 réponses

chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 522
19 mai 2008 à 19:35
Bonjour Romain,

essaie cette formule en B1:
=SI(JOURSEM(A1;2)=3;"vérification de tel matériel";"")
étendre sur les 7 premiers jours du mois.

à ton écoute.
0
Merci pour ta réponse (rapide en plus!) mais ca ne me convient pas tout à fait.

Je précise un peu : je souhaiterais que la cellule affiche différentes tâches en fonction de la date : par exemple vérification de tel matériel le 1er mercredi du mois, vérification d'un autre matériel le 2ème mercredi du mois etc...

Si quelqu'un à des pistes de solutions je suis preneur.

Merci
0
chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 522 > Romain
20 mai 2008 à 15:46
Bonjour à tous,

Regarde si ceci te convient.
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190 > chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012
20 mai 2008 à 16:04
Pas mal, je dirais même plus, très bien, mais un peu lourd pour quelque lignes de VBA, non ?
0
chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 522 > lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020
20 mai 2008 à 16:28
Merci,
j'avoue ne pas trop bien connaître VBA, n'avoir rien pigé aux explications ;-(, de plus comme ce sujet n'est pas le mien je ne tenais pas à intervenir en posant des questions sur comment faire (afin de ne pas embrouiller Romain).

Cordialement.
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190 > chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012
20 mai 2008 à 16:34
Aucun topic n'est à 'quelqu'un' et si tu veux intervenir et poser des questions c'est aucun problème, de plus ton exemple correspond tout à fait à ce qui est demander, excepté ma remarque précédante.
Cordialement.
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
20 mai 2008 à 12:16
Bonjour,
Une idée comme une autre...
Private Sub Workbook_Open()
    If Day(Now) < 7 Then
        Select Case Weekday(Now)
        Case 1 'Lundi
        Case 2 'Mardi
        Case 3 'mercredi
            'afficher message dans la cellule
        End Select
    End If

End Sub

A+
0
Désolé lermite222 mais là c'est au dessus de mes compétences!

et j'ai besoin de quelques explications supplémentaires!

Merci
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
20 mai 2008 à 14:34
Bon... Allons y,
Tu tape Alt+F11
Tu entre dans l'IDE de VBA
Sur la gauche tu a l'explorateur de projet avec tes feuilles et le classeur (ThisWorkbook)
double clic sur ThisWorkbook, dans la fenêtre qui s'ouvre tu fais un Copier/coller de la macro ci-dessus
Pour controler..
Tu remplace Stop par
MsgBox "Aujourdhui vous decez faire cela",VbOKonly,now

Résultat >>
Si la date du jour est plus petite que le 7 (de 1 à 6)
si aujourd'hui c'est mercredi
Le message s'affiche

Si tu met en dessous de 1 ce serra pour le lundi.. Etc..
Si pas asser clair revient.
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
20 mai 2008 à 16:43
Correction..
J(ai confondu 2 topic
il n'y a pas de Stop
La ligne
MsgBox "Aujourdhui vous decez faire cela",VbOKonly,now
'ou si tu veux dans une cellule tu remplace MsgBox.. par..
Cells(Ligne,Colonne).value = "Aujourdhui vous devez faire cela"

tu doit l'ajouter juste en dessous de
'afficher message dans la cellule
0

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

Posez votre question
Essai ca :

1A B C D E F
2 1 1er mardi faire serveur 1
3 2 2e mardi faire serveur 2
4 3 3e mardi faire serveur 3
5 4 4e mardi faire serveur 4
6 5 5e mardi faire serveur 5
7
8
9
10
11 20/05/2008
12 faire serveur 3

avec la formule suivante en B12 : =INDEX(D2:F6;EQUIV(SI(JOURSEM(B11)=3;SI(JOUR(B11)<8;1;SI(JOUR(B11)<15;2;SI(JOUR(B11)<22;3;SI(JOUR(B11)<29;4;5))));0);D2:D6;0);3)
0
1A B C D E F
2 1 1er mardi faire serveur 1
3 2 2e mardi faire serveur 2
4 3 3e mardi faire serveur 3
5 4 4e mardi faire serveur 4
6 5 5e mardi faire serveur 5
7
8
9
10
11 20/05/2008
12 faire serveur 3

en B12 : =INDEX(D2:F6;EQUIV(SI(JOURSEM(B11)=3;SI(JOUR(B11)<8;1;SI(JOUR(B11)<15;2;SI(JOUR(B11)<22;3;SI(JOUR(B11)<29;4;5))));0);D2:D6;0);3)
0
jejelefou > jejelefou
21 mai 2008 à 00:22
d2 : 1
e2 : 1er mardi
f2 : faire serveur 1
d3 : 2
e3 : 2e mardi
f3 : faire serveur 2
d4 : 3
e4 : 3e mardi
f4 : faire serveur 3
d5 : 4
e5 : 4e mardi
f5 : faire serveur 4
d6 : 5
e6 : 5e mardi
f6 : faire serveur 5

b11 : 20/05/2008
B12 : =INDEX(D2:F6;EQUIV(SI(JOURSEM(B11)=3;SI(JOUR(B11)<8;1;SI(JOUR(B11)<15;2;SI(JOUR(B11)­<22;3;SI(JOUR(B11)<29;4;5))));0);D2:D6;0);3)

le resultat sera en B12 avec le commentaire faire serveur x correspondant au bon mardi
pour mercredi remplacer 3 par 4 dans la formule joursem(b11)=4
0
Romain > jejelefou
21 mai 2008 à 09:51
Bonjour et merci à tous pour votre contribution!

La solution de jejelefou s'adapte parfaitement à ce que je voulais.(Pour info ce document excel est une feuille de garde utilisée dans un centre de secours sapeurs-pompiers)

Je me rends compte qu'excel offre de nombreuses possibilités et vue vos compétences je vais essayer d'aller un peu plus loin...

Sur la base de la solution de jejelefou, je souhaiterais étendre la formule à plusieurs jours de la semaine : je m'explique par un exemple : la cellule affiche :

- 1er mardi du mois : tâche 1
- 2ème mardi du mois : tâche 2
- 1er jeudi du mois : tâche 3
- 2ème jeudi du mois : tâche 4 etc...

Salutations
0
chtilou Messages postés 1664 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 522 > Romain
21 mai 2008 à 11:03
Bonjour à tous,

Romain, vu que tu as réussi à mettre en application la solution de Jejelefou, ce serait sympa si tu la postais par ici.

Cordialement.
0
jejelefou > Romain
21 mai 2008 à 11:30
en fait il te faut faire un tableau
dans mon exemple :
a1 tache du 1er dimanche du mois
a2 tache du 2eme dim
a3 tache du 3eme dim
a4
a5 tache du 5em
b1 1er lundi
b2 2emm
...
...
g1 1er samedi
...
g5 5eme samedi


en a8 tu mets la date que tu desire si tu veux la date du jour : =aujourdhui()

ensuite pour obtenir la tache du jour en a8 tu fais :
=INDEX(A1:G5;ARRONDI.SUP(JOUR(A8)/7;0);JOURSEM(A8))

si tu veux obtenir la tache du jour sans passer par A8
=INDEX(A1:G5;ARRONDI.SUP(JOUR(AUJOURDHUI())/7;0);JOURSEM(AUJOURDHUI()))

j'espere avoir été assez clair

a+
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
20 mai 2008 à 18:14
Bonjour à everybody

Juste un petit passage dans ce fil pour faire avancer le schmilblick (ce serait sympa si Romain pouvait mettre un extrait de sa feuille sur www.cjoint.com)
pour indiquer comment déterminer le Xème mercredi du mos

si le 1° du mois et de l'année est indiqué en A1 (par ex 1/5/8)

=A1-MOD(A1-5;7)+7*1-1 donne la date du 1° mercredi *
=A1-MOD(A1-5;7)+7*2-1 donne la date du 2° mercredi *

etc.
* formule d'après Monique sur Excel-downloads
ainsi, avec un tableau intermédiaire comportant ces formules dans la colonne de gauche et le boulot dans la colonne de droite

un simple recherchev avec valeur proche =0 et une gestion d'erreur (si la date ref n'est pas dans le tableau, on n'est pas mercredi)

comme Romain fait un tableau mensuel il faudrait employer en A1 une formule du style date(année,mois,1) avec l'année dans une cellule et le numéro du mois dans une autre pour travailler efficacement

Normalement, s'il s'agit que de ce problème et sous réserve de voir le classeur, une solution par VBA est superflue;

Bonne soirée à tous
En espèrant que le demandeur réponde (ca se fait rare en ce moment)
Michel
0