Microsoft 365 Code Macro - suppression colonne calendrier automatique

Tibs

XLDnaute Nouveau
Bonjour à tous,

J'ai un petit souci de codage pour faire marcher ma Macro.
J'ai créé un calendrier automatique sur 10 ans.
Le but de la macro est de supprimer pour tous les mois concernés et sur toutes les années les colonnes des jours en trop
(Exemple : février 2019 > supprimer les colonnes apparaissant après le 29/02 : 01/03, 02/03, 03/03 ou encore supprimer les jours après les 30 de chaque mois à 30 jours mais garder les 31 pour les mois à 31 jours).
Voici le code essayé mais j'ai une erreur dedans (ligne rouge= :

Sub Masquer_Jour()
Dim Num_Col As Long
For Num_Col = 30 To 32 ' Boucle sur les cellules des jours 29, 30 et 31
If Month(Cells(5, Num_Col)) >= Cells(1, 1) Then
Columns(Num_Col).Hidden = True
Else
Columns(Num_Col).Hidden = False
End If
Next
Range("B6:AF13").ClearContents 'Supprime le contenu dans les cellules
End Sub

En pièce jointe mon fichier.

Quelqu'un auraot une solution svp ?

Merci !
 

Pièces jointes

  • Calendrier Automatique.xlsx
    20.4 KB · Affichages: 15

job75

XLDnaute Barbatruc
Bonsoir Tibs, bienvenue sur XLD,

Voyez le fichier joint et cette macro dans le code de la feuille "Calendrier" (clic droit sur l'onglet et Visualiser le code) :
VB:
Private Sub Worksheet_Calculate()
Dim mois As Byte, c As Range
mois = [C1]
For Each c In [AE5:AG5]
    c.EntireColumn.Hidden = Month(c) > mois
Next
End Sub
Elle se déclenche quand des formules de la feuille sont recalculées.

Bonne nuit.
 

Pièces jointes

  • Calendrier Automatique(1).xlsm
    32.8 KB · Affichages: 12

patricktoulon

XLDnaute Barbatruc
Bonjour
il te manque le mois de juillet dans ta liste ce qui fosse toutes tes formules apres ce mois car décembre donnait 11
j'ai ajouté une formule pour le nombre de jour et modifié la formule du 29,30,31
et voila tu a "**" la ou les jour n'existent pas selon les mois

mapomme on s'est croisé j'ai pas vu pour les années;)
 

Pièces jointes

  • Calendrier Automatique.xlsx
    17.4 KB · Affichages: 17

Statistiques des forums

Discussions
283 757
Messages
1 854 170
Membres
152 414
dernier inscrit
Fabrice974
Haut Bas