Zone d impression par date
Résolu
kit24be
Messages postés
48
Statut
Membre
-
kit24be Messages postés 48 Statut Membre -
kit24be Messages postés 48 Statut Membre -
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
- Impression ecran samsung - Guide
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