Zone d impression par date
Résolu
kit24be
Messages postés
46
Date d'inscription
Statut
Membre
Dernière intervention
-
kit24be Messages postés 46 Date d'inscription Statut Membre Dernière intervention -
kit24be Messages postés 46 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai besoin d'une aide, n"étant pas très a l'aise avec vba je ne sais pas comment programmer une macro pour définir une zone d' impression par date du jour qui se trouve en colonne A, en B les articles produits, en C la localisation, en D la date de fabrication et en E la quantité un tri par article du plus ancien au plus récent en laisant une ligne vide entre chaque serie d articles et en sachant que je rajoute des arcticles divers au dédut de la listeset lorsque la quantité est a zero , que la ligne soit suprimer.
merci d' avance
j'ai besoin d'une aide, n"étant pas très a l'aise avec vba je ne sais pas comment programmer une macro pour définir une zone d' impression par date du jour qui se trouve en colonne A, en B les articles produits, en C la localisation, en D la date de fabrication et en E la quantité un tri par article du plus ancien au plus récent en laisant une ligne vide entre chaque serie d articles et en sachant que je rajoute des arcticles divers au dédut de la listeset lorsque la quantité est a zero , que la ligne soit suprimer.
merci d' avance
A voir également:
- Zone d impression par date
- Spouleur d'impression - Guide
- Alternative zone telechargement - Accueil - Outils
- Impression livret a5 - Guide
- Trier par date excel - Guide
- Historique impression - Forum Imprimante
6 réponses
Bonjour,
le probleme lorsque je les tris par date, je doit trier groupe d articles par groupe d articles pour pouvoir garder une ligne vierge entre chaque serie d articles
merci pour ta réponse
le probleme lorsque je les tris par date, je doit trier groupe d articles par groupe d articles pour pouvoir garder une ligne vierge entre chaque serie d articles
merci pour ta réponse
Bonjour,
Une autre façon de faire est de ne pas toucher au tableau original, mais de travailler sur une copie .. la macro fait une copie de l'onglet 'Feuil1', travaille sur cette copie et détruit la copie quand l'impression est terminée.
Qu'en penses-tu ?
Une autre façon de faire est de ne pas toucher au tableau original, mais de travailler sur une copie .. la macro fait une copie de l'onglet 'Feuil1', travaille sur cette copie et détruit la copie quand l'impression est terminée.
Qu'en penses-tu ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Désolé pour le retard .. voici un code
Tires-en ce que tu peux et n'hésite pas si t'a des questions.
Edit:
Sur la "feuil2", écrire la date de départ en "B1" et la date de fin en "B2".
Option Explicit Sub Imprimer() Dim DatePre As Date Dim DateDer As Date ' Dim LigPre As Integer, LigDer As Integer Dim ColPre As Integer, ColDer As Integer Dim LigPre_Select As Integer, LigDer_Select As Integer Dim i As Integer Dim DateLue As Date ' LigPre = 2 ColPre = 1: ColDer = 5 ' récupérer les dates Worksheets("Feuil2").Select DatePre = Cells(1, 2).Value DateDer = Cells(2, 2).Value If ((DatePre < "01/01/2012") Or (DatePre < Now)) Then Exit Sub ' ' sélectionner la feuille Worksheets("Feuil1").Select ' sélectionner les colonnes Columns("A:E").Select ' trier les colonnes par date Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal ' définir la dernière ligne non-vide LigDer = Range("A" & Rows.Count).End(xlUp).Row ' définir la valeur des variables lignes LigDer_Select = 0 LigPre_Select = (LigDer + 1) ' mémoriser les lignes à imprimer For i = LigPre To LigDer DateLue = Cells(i, 1).Value If ((DateLue >= DatePre) And (DateLue <= DateDer)) Then If (i < LigPre_Select) Then LigPre_Select = i If (i > LigDer_Select) Then LigDer_Select = i End If Next i ' sélection de la plage Range(Cells(LigPre_Select, ColPre), Cells(LigDer_Select, ColDer)).Select ' sélectionner la plage d'impression ActiveSheet.PageSetup.PrintArea = Selection.Address '"$A$5:$E$6" ' imprimer ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True ' sélectionner une cellule Range("A1").Select End Sub
Tires-en ce que tu peux et n'hésite pas si t'a des questions.
Edit:
Sur la "feuil2", écrire la date de départ en "B1" et la date de fin en "B2".
un grand merci pour ta macro, j ai un souci j ai mis les date en b1 et b2 mais elle ne fait que changer de page je te met ci joint le lien en sachant que je travail avec excel 2010
https://www.cjoint.com/?3AntyGDu5mr
merci
https://www.cjoint.com/?3AntyGDu5mr
merci
désolé le lien ci dessus est corrompu
voici le nouveau lien
https://www.cjoint.com/?3AntHElTvyn
merci
voici le nouveau lien
https://www.cjoint.com/?3AntHElTvyn
merci