Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

questions de calendrier

23 réponses
Avatar
Grégory DELBOE
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais une fois de
plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de février en
A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une autre
feuille du classeur?

Merci pour votre aide.

10 réponses

1 2 3
Avatar
Grégory DELBOE
Merci Philippe,

Avec le dernier code, les mercredi et les jours fériés sont bien effacés.
Néanmoins, la plage nommée "feries" doit être dans la même feuille, et
celle-ci est effacée dès le lancement de la macro. J'ai essayé de les placer
dans une autre feuille, pour qu'ils restent apparents, mais ça ne fonctionne
pas.

Merci Fredo pour le nouvel essai.

C'est vrai que l'idéal semble être une sorte de synthèse de vos
propositions...

à plus et bonne rando à Fredo!

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uU%
Bonjour,
La dernière version du code fournie éliminait déjà les mercredi ; celle ci
élimine toutes les dates contenues dans une plage nommée feries

Sub calend_der()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Merci Fredo et Philippe pour vos réponses. Effectivement, désormais, j'ai
le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés ou
non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux aenseignants,
et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais une
fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.





















Avatar
Philippe.R
Re,
Non, non, la plage nommée (comportant la liste de tes jours non travaillés)
n'a pas besoin d'être dans la même feuille ; elle peut même avoir la forme
que tu souhaites, continue ou pas.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:%
Merci Philippe,

Avec le dernier code, les mercredi et les jours fériés sont bien effacés.
Néanmoins, la plage nommée "feries" doit être dans la même feuille, et
celle-ci est effacée dès le lancement de la macro. J'ai essayé de les
placer dans une autre feuille, pour qu'ils restent apparents, mais ça ne
fonctionne pas.

Merci Fredo pour le nouvel essai.

C'est vrai que l'idéal semble être une sorte de synthèse de vos
propositions...

à plus et bonne rando à Fredo!

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uU%
Bonjour,
La dernière version du code fournie éliminait déjà les mercredi ; celle
ci élimine toutes les dates contenues dans une plage nommée feries

Sub calend_der()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.
























Avatar
Grégory DELBOE
Re!

Je ne dois pas être doué. Voici mon fichier nommé essai2 :
http://cjoint.com/?hmnlSuP3PO

J'ai créé une plage nommée "feries" en feuil2 mais rien n'y fait...
D'ailleurs, excel renvoie une erreur 400 avant d'exécuter son travail. Tu
remarqueras aussi que pour certains mois, les lignes empiètent sur le mois
suivant en bout de ligne.

Qu'en penses-tu? Suis-je vraiment à recycler?

à plus

Greg

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Re,
Non, non, la plage nommée (comportant la liste de tes jours non
travaillés) n'a pas besoin d'être dans la même feuille ; elle peut même
avoir la forme que tu souhaites, continue ou pas.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:%
Merci Philippe,

Avec le dernier code, les mercredi et les jours fériés sont bien effacés.
Néanmoins, la plage nommée "feries" doit être dans la même feuille, et
celle-ci est effacée dès le lancement de la macro. J'ai essayé de les
placer dans une autre feuille, pour qu'ils restent apparents, mais ça ne
fonctionne pas.

Merci Fredo pour le nouvel essai.

C'est vrai que l'idéal semble être une sorte de synthèse de vos
propositions...

à plus et bonne rando à Fredo!

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uU%
Bonjour,
La dernière version du code fournie éliminait déjà les mercredi ; celle
ci élimine toutes les dates contenues dans une plage nommée feries

Sub calend_der()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au
même titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.



























Avatar
Philippe.R
Re,
Désolé, je ne dispose pas d'Excel 2007, je ne peux donc ouvrir le fichier.
:-((
Attention, le code doit être dans un module ordinaire, pas dans le module de
la feuille (ce qui semble être le cas vu tes déboires)
Courage !
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:O5I%
Re!

Je ne dois pas être doué. Voici mon fichier nommé essai2 :
http://cjoint.com/?hmnlSuP3PO

J'ai créé une plage nommée "feries" en feuil2 mais rien n'y fait...
D'ailleurs, excel renvoie une erreur 400 avant d'exécuter son travail. Tu
remarqueras aussi que pour certains mois, les lignes empiètent sur le mois
suivant en bout de ligne.

Qu'en penses-tu? Suis-je vraiment à recycler?

à plus

Greg

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Re,
Non, non, la plage nommée (comportant la liste de tes jours non
travaillés) n'a pas besoin d'être dans la même feuille ; elle peut même
avoir la forme que tu souhaites, continue ou pas.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:%
Merci Philippe,

Avec le dernier code, les mercredi et les jours fériés sont bien
effacés. Néanmoins, la plage nommée "feries" doit être dans la même
feuille, et celle-ci est effacée dès le lancement de la macro. J'ai
essayé de les placer dans une autre feuille, pour qu'ils restent
apparents, mais ça ne fonctionne pas.

Merci Fredo pour le nouvel essai.

C'est vrai que l'idéal semble être une sorte de synthèse de vos
propositions...

à plus et bonne rando à Fredo!

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uU%
Bonjour,
La dernière version du code fournie éliminait déjà les mercredi ; celle
ci élimine toutes les dates contenues dans une plage nommée feries

Sub calend_der()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au
même titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A
par exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message
de news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.






























Avatar
Philippe.R
Allez, encore une petite évolution, pour éviter de déborder sur l'année
suivante :

Sub calend_dur()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 40
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 _
Or Year(DateSerial([b1], i - 1, j)) > [b1] Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:O5I%
Re!

Je ne dois pas être doué. Voici mon fichier nommé essai2 :
http://cjoint.com/?hmnlSuP3PO

J'ai créé une plage nommée "feries" en feuil2 mais rien n'y fait...
D'ailleurs, excel renvoie une erreur 400 avant d'exécuter son travail. Tu
remarqueras aussi que pour certains mois, les lignes empiètent sur le mois
suivant en bout de ligne.

Qu'en penses-tu? Suis-je vraiment à recycler?

à plus

Greg

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Re,
Non, non, la plage nommée (comportant la liste de tes jours non
travaillés) n'a pas besoin d'être dans la même feuille ; elle peut même
avoir la forme que tu souhaites, continue ou pas.
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:%
Merci Philippe,

Avec le dernier code, les mercredi et les jours fériés sont bien
effacés. Néanmoins, la plage nommée "feries" doit être dans la même
feuille, et celle-ci est effacée dès le lancement de la macro. J'ai
essayé de les placer dans une autre feuille, pour qu'ils restent
apparents, mais ça ne fonctionne pas.

Merci Fredo pour le nouvel essai.

C'est vrai que l'idéal semble être une sorte de synthèse de vos
propositions...

à plus et bonne rando à Fredo!

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uU%
Bonjour,
La dernière version du code fournie éliminait déjà les mercredi ; celle
ci élimine toutes les dates contenues dans une plage nommée feries

Sub calend_der()
'MPFE le 12/07/2009
Dim i As Integer, j As Integer, k As Integer, _
g As Range, h As Range
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
For Each g In Range(Cells(2, 1), ActiveCell.SpecialCells(xlLastCell))
For Each h In Range("feries")
If h.Value = g.Value Then g.Value = ""
Next h
Next g
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au
même titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A
par exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message
de news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.






























Avatar
Fredo P.
Voila, ce devrait être bon
http://cjoint.com/?hmofW8D5mq

"Grégory DELBOE" a écrit dans le message de news:

Merci Fredo et Philippe pour vos réponses. Effectivement, désormais, j'ai
le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés ou
non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux aenseignants,
et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les dates
hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais une
fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.


















Avatar
Grégory DELBOE
Merci à tous les deux! Je retoruve dans vos 2 propositions tout ce que
j'attends de ce fichier:
- Le fichier de Fredo propose un formulaire qui permet de rentrer une date
de début et de fin, ce qui rend très souple l'utilisation du fichier et
permettra à l'utilisateur une mise à jour facile tous les ans, ou une
personnalisation. Pour être complètement personnalisable, on pourrait rêver
d'un formulaire qui demanderait également "quels sont vos jours de repos
hebdomadaire?", ce qui permettrait de s'adapter à des configurations d'école
différentes (certains travaillent le mercredi, d'autres non...). De plus, la
macro permet d'éliminer toutes les cellules vides pour chaque mois. Par
contre, dans la dernière proposition de Fredo du "calendrier auto", le mois
ne commence pas forcément en première colonne, des dates ont disparues, des
cellules sont vides. Ce qui n'était pas le cas dans la première proposition.
- Le code de Philippe permet de prendre les jours fériés. Il les élimine
automatiquement dans la cellule mais laisse une cellule vide.

Grace à vos géniales propositions, je pense pouvoir décrire très précisément
le fichier idéal. C'est une synthèse de vos travaux:
- Dès le démarrage, les petits formulaires permettent d'indiquer les dates
de début d'année, de fin d'année, la cellule dans laquelle démarre le
calendrier. La cerise sur le gâteau serait de cocher les jours de congés
hebdomadaires.
- Une feuille "congés et fériés" récapitulerait les dates non travaillées,
saisi manuellement par l'utilisateur.
- La feuille "calendrier" récapitulerait, une ligne par mois, les jours
travaillés. Dans la première colonne se trouverait le prmier jour travaillé
du mois, puis dans la deuxième le second...etc. en prenant en compte
l'ensemble des congés.

J'ai le sentiment que vous êtes très proche de cette attente... Me
trompe-je?

Merci pour tous vos efforts.

Greg

NB: Effectivement Philippe, j'avais mis le code sur la feuille. Je n'ai
toujours pas bien compris les cas dans lesquels il faut mettre les codes
dans des modules...Je rêve d'une formation payé par l'éducation nationale!

"Fredo P." a écrit dans le message
de news:%
Voila, ce devrait être bon
http://cjoint.com/?hmofW8D5mq

"Grégory DELBOE" a écrit dans le message de news:

Merci Fredo et Philippe pour vos réponses. Effectivement, désormais, j'ai
le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés ou
non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux aenseignants,
et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais une
fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.






















Avatar
Fredo P.
Si le rangement n'a peu d'importance
http://cjoint.com/?hmujtvFuui

"Grégory DELBOE" a écrit dans le message de news:

Merci à tous les deux! Je retoruve dans vos 2 propositions tout ce que
j'attends de ce fichier:
- Le fichier de Fredo propose un formulaire qui permet de rentrer une date
de début et de fin, ce qui rend très souple l'utilisation du fichier et
permettra à l'utilisateur une mise à jour facile tous les ans, ou une
personnalisation. Pour être complètement personnalisable, on pourrait
rêver d'un formulaire qui demanderait également "quels sont vos jours de
repos hebdomadaire?", ce qui permettrait de s'adapter à des configurations
d'école différentes (certains travaillent le mercredi, d'autres non...).
De plus, la macro permet d'éliminer toutes les cellules vides pour chaque
mois. Par contre, dans la dernière proposition de Fredo du "calendrier
auto", le mois ne commence pas forcément en première colonne, des dates
ont disparues, des cellules sont vides. Ce qui n'était pas le cas dans la
première proposition.
- Le code de Philippe permet de prendre les jours fériés. Il les élimine
automatiquement dans la cellule mais laisse une cellule vide.

Grace à vos géniales propositions, je pense pouvoir décrire très
précisément le fichier idéal. C'est une synthèse de vos travaux:
- Dès le démarrage, les petits formulaires permettent d'indiquer les dates
de début d'année, de fin d'année, la cellule dans laquelle démarre le
calendrier. La cerise sur le gâteau serait de cocher les jours de congés
hebdomadaires.
- Une feuille "congés et fériés" récapitulerait les dates non travaillées,
saisi manuellement par l'utilisateur.
- La feuille "calendrier" récapitulerait, une ligne par mois, les jours
travaillés. Dans la première colonne se trouverait le prmier jour
travaillé du mois, puis dans la deuxième le second...etc. en prenant en
compte l'ensemble des congés.

J'ai le sentiment que vous êtes très proche de cette attente... Me
trompe-je?

Merci pour tous vos efforts.

Greg

NB: Effectivement Philippe, j'avais mis le code sur la feuille. Je n'ai
toujours pas bien compris les cas dans lesquels il faut mettre les codes
dans des modules...Je rêve d'une formation payé par l'éducation nationale!

"Fredo P." a écrit dans le
message de news:%
Voila, ce devrait être bon
http://cjoint.com/?hmofW8D5mq

"Grégory DELBOE" a écrit dans le message de news:

Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.

























Avatar
Fredo P.
Oups ( petite coquille pas visible à 1ière vue sur le précédent posté)
http://cjoint.com/?hmuVVJTayV

"Grégory DELBOE" a écrit dans le message de news:

Merci à tous les deux! Je retoruve dans vos 2 propositions tout ce que
j'attends de ce fichier:
- Le fichier de Fredo propose un formulaire qui permet de rentrer une date
de début et de fin, ce qui rend très souple l'utilisation du fichier et
permettra à l'utilisateur une mise à jour facile tous les ans, ou une
personnalisation. Pour être complètement personnalisable, on pourrait
rêver d'un formulaire qui demanderait également "quels sont vos jours de
repos hebdomadaire?", ce qui permettrait de s'adapter à des configurations
d'école différentes (certains travaillent le mercredi, d'autres non...).
De plus, la macro permet d'éliminer toutes les cellules vides pour chaque
mois. Par contre, dans la dernière proposition de Fredo du "calendrier
auto", le mois ne commence pas forcément en première colonne, des dates
ont disparues, des cellules sont vides. Ce qui n'était pas le cas dans la
première proposition.
- Le code de Philippe permet de prendre les jours fériés. Il les élimine
automatiquement dans la cellule mais laisse une cellule vide.

Grace à vos géniales propositions, je pense pouvoir décrire très
précisément le fichier idéal. C'est une synthèse de vos travaux:
- Dès le démarrage, les petits formulaires permettent d'indiquer les dates
de début d'année, de fin d'année, la cellule dans laquelle démarre le
calendrier. La cerise sur le gâteau serait de cocher les jours de congés
hebdomadaires.
- Une feuille "congés et fériés" récapitulerait les dates non travaillées,
saisi manuellement par l'utilisateur.
- La feuille "calendrier" récapitulerait, une ligne par mois, les jours
travaillés. Dans la première colonne se trouverait le prmier jour
travaillé du mois, puis dans la deuxième le second...etc. en prenant en
compte l'ensemble des congés.

J'ai le sentiment que vous êtes très proche de cette attente... Me
trompe-je?

Merci pour tous vos efforts.

Greg

NB: Effectivement Philippe, j'avais mis le code sur la feuille. Je n'ai
toujours pas bien compris les cas dans lesquels il faut mettre les codes
dans des modules...Je rêve d'une formation payé par l'éducation nationale!

"Fredo P." a écrit dans le
message de news:%
Voila, ce devrait être bon
http://cjoint.com/?hmofW8D5mq

"Grégory DELBOE" a écrit dans le message de news:

Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au même
titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.

























Avatar
Grégory DELBOE
Merci Fredo, c'est super! La feuille calendrier correspond EXACTEMENT à ce
que j'attendais. S'il est trop compliqué de prendre en compte les jours
fériés, cette feuille sera déjà très opérationnelle. Il restera à les
supprimer manuellement chaque année. A moins que vous ayez une meilleure
idée...

Merci encore!

Greg


"Fredo P." a écrit dans le message
de news:%
Oups ( petite coquille pas visible à 1ière vue sur le précédent posté)
http://cjoint.com/?hmuVVJTayV

"Grégory DELBOE" a écrit dans le message de news:

Merci à tous les deux! Je retoruve dans vos 2 propositions tout ce que
j'attends de ce fichier:
- Le fichier de Fredo propose un formulaire qui permet de rentrer une
date de début et de fin, ce qui rend très souple l'utilisation du fichier
et permettra à l'utilisateur une mise à jour facile tous les ans, ou une
personnalisation. Pour être complètement personnalisable, on pourrait
rêver d'un formulaire qui demanderait également "quels sont vos jours de
repos hebdomadaire?", ce qui permettrait de s'adapter à des
configurations d'école différentes (certains travaillent le mercredi,
d'autres non...). De plus, la macro permet d'éliminer toutes les cellules
vides pour chaque mois. Par contre, dans la dernière proposition de Fredo
du "calendrier auto", le mois ne commence pas forcément en première
colonne, des dates ont disparues, des cellules sont vides. Ce qui n'était
pas le cas dans la première proposition.
- Le code de Philippe permet de prendre les jours fériés. Il les élimine
automatiquement dans la cellule mais laisse une cellule vide.

Grace à vos géniales propositions, je pense pouvoir décrire très
précisément le fichier idéal. C'est une synthèse de vos travaux:
- Dès le démarrage, les petits formulaires permettent d'indiquer les
dates de début d'année, de fin d'année, la cellule dans laquelle démarre
le calendrier. La cerise sur le gâteau serait de cocher les jours de
congés hebdomadaires.
- Une feuille "congés et fériés" récapitulerait les dates non
travaillées, saisi manuellement par l'utilisateur.
- La feuille "calendrier" récapitulerait, une ligne par mois, les jours
travaillés. Dans la première colonne se trouverait le prmier jour
travaillé du mois, puis dans la deuxième le second...etc. en prenant en
compte l'ensemble des congés.

J'ai le sentiment que vous êtes très proche de cette attente... Me
trompe-je?

Merci pour tous vos efforts.

Greg

NB: Effectivement Philippe, j'avais mis le code sur la feuille. Je n'ai
toujours pas bien compris les cas dans lesquels il faut mettre les codes
dans des modules...Je rêve d'une formation payé par l'éducation
nationale!

"Fredo P." a écrit dans le
message de news:%
Voila, ce devrait être bon
http://cjoint.com/?hmofW8D5mq

"Grégory DELBOE" a écrit dans le message de news:

Merci Fredo et Philippe pour vos réponses. Effectivement, désormais,
j'ai le début de ce que je souhaite. Il resterait:
- Une démarche qui permettrait d'effacer également les merdredi, au
même titre que les samedi et dimanche.
- Comment éliminer certaines dates que j'aurais spécifié (jours fériés
ou non travaillés) dans une autre feuille du classeur, en colonne A par
exemple?

Merci pour votre soutien sans lequel je ne ferais rien...

Greg



"Fredo P." a écrit dans le
message de news:
Merci Philippe pour la relève, toutes mes réserves de réfs étaient
disparues d'OE.>remise en fonc. du vieux dd boiteux>un ptit coup de
liqueur de jouvence>quelques soudures>import des messages> j'ai tout
remis en place mais trop tard.

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: %
Re,
Version bis :

Sub calend_dos()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5 _
Or Weekday(DateSerial([b1], i - 1, j), vbMonday) = 3
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub


--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonjour,

Merci Philippe pour ta réponse. Bizarrement, le mois de Février ne
s'affiche pas. Comment est-il possible de supprimer également les
mercredi? (éventuellement, car ce fichier se destine aux
aenseignants, et certains ne travaillent pas le mercredi...)

Greg


"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:uP$
Bonjour,
Un exemple de code pour inscrire dans la même feuille toutes les
dates hors samedi et dimanche, une ligne par mois

Sub calendes()
'MPFE le 11/07/2009
Dim i As Integer, j As Integer, k As Integer
Application.ScreenUpdating = False
For i = 2 To 13
For j = 1 To 33
Cells(i, j).ClearContents
If Weekday(DateSerial([b1], i - 1, j), vbMonday) > 5
Then
k = j + 1
ElseIf Month(DateSerial([b1], i - 1, j)) > i - 1 Then
i = i + 1
Exit For
Else
k = j
End If
Cells(i, k) = DateSerial([b1], i - 1, j)
Next j
Next i
Application.ScreenUpdating = True
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Grégory DELBOE" a écrit dans le message de
news:
Bonsoir,

Je cherche à créer un calendrier. L'année se trouve en B1. Mais
une fois de plus, j'ai besoin de votre aide:

- Comment avoir le premier jour de janvier en A2, le premier de
février en A3 ... etc. en fonction de l'année en B1?
- Comment éliminer tous les dimanches par exemple?
- Comment éliminer certaines dates que j'aurais spécifié dans une
autre feuille du classeur?

Merci pour votre aide.





























1 2 3