Zone d impression par date

Résolu/Fermé
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 - 13 janv. 2013 à 09:53
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 - 13 janv. 2013 à 21:39
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
A voir également:

6 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 12:01
Bonjour kit24be,

Le plus est de trier par date, et seulement après on définit la zone d'impression.
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 12:24
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
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 12:37
Pourquoi garder une ligne vide par "série d'articles" ??
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 12:44
Pour différencier plus facilement les différents groupe etant données qu il y en a plus d une centaine et que ce soit lisible facilement pour les personnes qui font l inventaire
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 12:49
Je ne comprends pas tout avec tes groupe .. dommage car j'avais une macro qui trie par date, sélectionne la zone d'impression et imprime d'un seul coup.
Une autre fois, je serai peut-être utile ..
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 12:53
peux tu me la publier, je vais voir ce que je peut faire. cela me donnera une idée et essayer sans les lignes vierges
et je te dit un grand merci pour tes réponses
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 12:58
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 ?
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 13:00
je suis ouvert a toutes les suggestions, mais je ne comprend pas bien ce que tu veux dire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
Modifié par Heliotte le 13/01/2013 à 17:28
Désolé pour le retard .. voici un code

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".
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 19:30
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
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 19:34
désolé le lien ci dessus est corrompu
voici le nouveau lien
https://www.cjoint.com/?3AntHElTvyn
merci
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 20:10
toujours corrompu
https://www.cjoint.com/?3AnujcHrfZV
celui la il fonctionne
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 20:16
Bonsoir kit24be,

Ton lien marche super .. mais vide de macro !!
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 20:27
oui j ai du la supprimer avant de te l envoyer
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
13 janv. 2013 à 21:21
Autre possibilité:

Dans le menu,
Données, Filtrer, Filtre automatique ..

Tu sélectionne la date, tu imprime avec la ligne de titre .. + simple qu'une macro !!
0
kit24be Messages postés 46 Date d'inscription samedi 12 janvier 2013 Statut Membre Dernière intervention 22 octobre 2017 1
13 janv. 2013 à 21:39
j avais déja essayé, mais il me faut le moins de manipulation possible vu le nombre de personnes qui l utiliserons beaucoup ne connaissent pas bien excel
et un trés grand merci, tu m as bien aidé
0