Suppression de ligne en fonction d'une date

Bonjour le Forum

j'ai besoin de supprimer des lignes ou des cellules par rapport à une incrémentation de date.

je saisi dans la cellule "A1" une date, puis je lance le code.

Outre le fait de la mise en forme, j'incrémente 31 lignes sous ma date saisie.

Ce que je veux c'est ne garder que les lignes qui sont du même mois que la date saisie initialement

Je n'arrive pas à supprimer les lignes au final

22anticipes.xlsm (15.09 Ko)

J'ai placé un fichier avec le code

D'avance je vous remercie pour votre aide et votre disponibilité

Hello,

Lorsqu'il s'agit de supprimer, il faut boucler dans l'autre sens

    For i = imax + 1 To 2 Step -1
        If (Range("A" & i).Value > refdate) And (Range("A" & i).Value <> "") Then
            Range("A" & i).EntireRow.Delete
        End If
    Next i

+ :

refdate = Range("A1").Value + 30

Je te laisse t'amuser pour le mois de février

Bonjour le Forum

Bonjour Rag02700, merci pour ton aide

Oui je me rends bien compte que ce n'est pas optimisé, mais je ne sais vraiment pas comment faire pour que les dates soient générées en fonction du moi de la date du jour...

Cette liste de date va être repris pour créer un onglet pour autant de collaborateurs qui travaille dans mon service et ce tous les mois...

Du coup comment est ce que je pourrais faire?

En tout cas merci beaucoup pour ton aide

Hello,

36anticipes.xlsm (20.34 Ko)

Bonjour le forum

Bonjour et merci Rag02700

Juste une question:

est-il possible de n'avoir que les jours de la semaine (lundi, mardi, mercredi, jeudi et vendredi)?

D'avance merci pour la réponse

C'est un carton rouge pour les jours fériés que tu vas demander, tu as toutes les billes pour trouver

Sans les samedis et dimanches :

Sub Bouton1_Cliquer()

Dim i As Byte
Dim Deb_Mois As Date
Dim Fin_Mois As Date

Deb_Mois = DateSerial(Year([E1]), Month([E1]), 1)
Fin_Mois = DateAdd("m", 1, Deb_Mois) - 1

i = 1
Range("F1:F31").ClearContents
While Deb_Mois <= Fin_Mois
    If Not Weekday(Deb_Mois, vbMonday) > 5 Then
        Range("F" & i) = Deb_Mois
        Deb_Mois = Deb_Mois + 1
        i = i + 1
    Else: Deb_Mois = Deb_Mois + 1
    End If
Wend

End Sub

Bonjour le Forum

Bonjour Rag02700

Je te remercie beaucoup pour ton aide

Je ne vais pas pousser le vice plus loin

Tu m'as été d'une grande aide

A bientôt

Merci

Rechercher des sujets similaires à "suppression ligne fonction date"