filtrer entre 2 dates et 2 radio bouton

elngoma

XLDnaute Nouveau
Bonsoir la famille je suis nouveau a commencé a programmer en VBA, jai realiser un projet et j'aimerais etraire les donnees a partir d'un userform contenant 2 textbox, 1 textbox pour date debut et l'autre date fin; aussi 2 radio button, 1 trimestriel et l'autre semestriel, bon si je veux extraire les donnees ,j'entre les 2 dates est j choisi un radi button et click sur le bouton commande du userform, les lignes de donnees sont autoincrementees puisque au fur a mesure que j'entre les donnees, on actualise pour voir les nouvelles donnees entrees. les donnees sont importees depuis une base de donnee, j joints mon fichier excel avec le userform deja concu et la base de donnee.......... malheureusement jai essayé de joindre la base de donnée, l'extension n'ai pas autorisee... s'il vous plait aidez moi, je vous en pri, la colonne de ma date se trouve a la colonne B.
 

Pièces jointes

  • filtre_2_date.xlsm
    26.4 KB · Affichages: 67

Lone-wolf

XLDnaute Barbatruc
Bonjour elngoma et bienvenue sur XLD :)

Désolé pour le retard, je pensais que quelqu'un allait répondre. Ton fichier en retour.

UTILISATION

Pour les trimèstres, selectionne une période(de 1 à 4) 1 pour 1er trim, 2 pour 2ème trim ect., puis clique sur le bouton Filtrer.

Pour les semèstres, entre le 1èr jour de l'année (ici 01/01/2005 ou 01/01/2006), ensuite sélectionne l'une des périodes semèstrielles(OptionButton).
 

Pièces jointes

  • filtre_2_date.xlsm
    35.5 KB · Affichages: 56
Dernière édition:

elngoma

XLDnaute Nouveau
bonsoir, j'ai apprecié le travail et merci; mais j'ai oublié un detail, il faut aussi qu'on filtre par semestre ce que j'ai mentioné en vert sur l'image ci dessous; par ailleurs quand on fera un filtre soit par trimestre ou semestre; et qu'il y'a par exemple 60 enregistrements filtrés; c a d 60 lignes, ces 60 enregistrements filtrés seront repartis en 30 de telle sorte que je puisse imprimer une page contenant 30 donnees filtrées. comme exemple je joints un fichier excel qui montre la repartition des donnees, mais j'aimerais que chaque repartition (30) se faite sur sa feuille respective.​
 

Pièces jointes

  • capturenew.PNG
    capturenew.PNG
    13.5 KB · Affichages: 36
  • EMMOLUMENT-PENAL-Ième-TRIMESTRE-JUDICIAIRE-2016.xlsx
    21.1 KB · Affichages: 43

Lone-wolf

XLDnaute Barbatruc
Re

Personnellement je trouve plus simple d'ajouter 6 feuilles (du 1er au 4ème trimestre + 1er semèstre et 2ème semèstre). Copier les trimèstres dans les feuilles réspectives et de là, faire une boucle à pas de 30 pour imprimer 30 lignes par pages. Fait la mise en page + mettre la 1ère ligne pour chaque feuille. Ensuite

VB:
Option Explicit

Sub Imprimer()
Dim derlig As Long, i As Long

    On Error Resume Next
    Application.DisplayAlerts = False
   
    With Feuil1
        .Activate
        derlig = .Range("a" & Rows.Count).End(xlUp).Row
        .Cells.PageBreak = xlNone
        For i = 2 To derlig Step 30
            .Rows(i).PageBreak = xlPageBreakManual
        Next i
    End With

    With ActiveSheet
        .PageSetup.PrintArea = "$A$2:$P$368"
        .PrintPreview    'Aperçu avant impression
       '.PrintOut   Pour Imprimer
    End With
End Sub

En PJ classeur exemple (avec mise en page et 1ère ligne à afficher pour chaque page) à adapter pour chaque feuille.
 
Dernière édition:

Discussions similaires

Réponses
9
Affichages
654

Statistiques des forums

Discussions
313 131
Messages
2 095 554
Membres
106 294
dernier inscrit
Stéphkdsd