XL 2016 Agenda Perpetuel

pika83

XLDnaute Occasionnel
bonjour, j'essaye de faire un agenda perpétuel avec week-end et jours fériés.
j'ai essayé plusieurs solutions, mais je n'arrive pas a faire coïncider la date (01, 02, 03... avec le jour Lu, Ma, Me....).
Est ce que quelqu’un aurait une idée de manière a faire avancer celui ci.
D'avance merci.
 

Pièces jointes

  • agenda v1.xlsx
    22.8 KB · Affichages: 14

pika83

XLDnaute Occasionnel
OK n’étant pas un expert en tableur, je comprend pourquoi je ne trouvais pas.
Si vous avez une idée, avec VBA ça donnerait quoi ?

Merci pour ton essai D.D. mais en essayant sur des années différente (ex avec ta méthode, en 2022 le 1er janvier 2022 tomberait le mercredi, alors que c'est un samedi), et les jours colorés en bleu devraient correspondre au week-end, alors qu'en changeant les années ils se déplacent.
 

D.D.

XLDnaute Impliqué
Merci pour ton essai D.D. mais en essayant sur des années différente (ex avec ta méthode, en 2022 le 1er janvier 2022 tomberait le mercredi, alors que c'est un samedi), et les jours colorés en bleu devraient correspondre au week-end, alors qu'en changeant les années ils se déplacent.
Re,

Ma formule est bonne, juste que je l'avais placé dans un petit calendrier à coté à titre d'exemple.
Ci-inclus avec la formule dans ton calendrier.
PAr contre pourquoi mettre les WE en MFC ? Pas bien compris.
Et concernant les jours feriés, il faut refaire un peu la formule, mais je te laisse la main.

(Oh, et tant que j'y suis: Pourquoi tu enlèves les quadrillages en "peignant" le fond et pas "Affichage / Quadrillage" ?
 

Pièces jointes

  • agenda v1 (1).xlsx
    24.3 KB · Affichages: 20

patricktoulon

XLDnaute Barbatruc
re
sinon en vba

VB:
'la plage des 12 mois
'J6:P11,R6:X11,Z6:AF11,AH6:AN11,J15:P20,R15:X20,Z15:AF20,AH15:AN20,J24:P29,R24:X29,Z24:AF29,AH24:AN29
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Firstday&, p As Range, r As Range, I&, NbJour&, J&
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Set p = Range("j6,r6,z6,ah6,j15,r15,z15,ah15,j24,r24,z24,ah24")
    If Target.Address = "$J$2" Then
        For I = 1 To 12
            Set r = p.Areas(I).Resize(6, 7)    'determine la plage du mois(i)avec sa cells(1)
            r.Value = "": r.NumberFormat = "dd"
            Firstday = Weekday(DateSerial([j2], I, 1), vbUseSystemDayOfWeek) - 1    'le jour de la semaine du premier du mois
            NbJour = Day(DateSerial([j2], I + 1, 0))    'le nombre de jour dans le mois
            For J = 1 To NbJour
                r.Cells(Firstday + (J)) = DateSerial([j2], I, J)
            Next
        Next
    End If
    Application.EnableEvents = True
End Sub

j'avais virer tout les MFC qui me piquaient les yeux ,il faudra les remettre
demo3.gif
 

Pièces jointes

  • agenda macro .xlsm
    26.4 KB · Affichages: 18
Dernière édition:

patricktoulon

XLDnaute Barbatruc
Re,

Ma formule est bonne, juste que je l'avais placé dans un petit calendrier à coté à titre d'exemple.
Ci-inclus avec la formule dans ton calendrier.
PAr contre pourquoi mettre les WE en MFC ? Pas bien compris.
Et concernant les jours feriés, il faut refaire un peu la formule, mais je te laisse la main.

(Oh, et tant que j'y suis: Pourquoi tu enlèves les quadrillages en "peignant" le fond et pas "Affichage / Quadrillage" ?

bonjou @D.D.

ton fichier donne pour 2019
Capture.JPG
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 848
dernier inscrit
Djigbenou