OVH Cloud OVH Cloud

macro impression ligne par ligne

9 réponses
Avatar
Dvy
bonjour,
j'utilise un tableau qui retrace les expéditions vers mes fournisseurs. Je
dois imprimer pour chaque fournisseur la ou les lignes qui lui correspondent.
Aujourd'hui, j'utilise le filtre automatique où je sélectionne un par un mes
fournisseurs, puis je définis la zone d'impression et enfin imprimer.
pourriez vous m'aider à trouver une macro du style "sélectionner le critère
suivant" (attention : mes fournisseurs ne sont pas toujours les mêmes ) puis
"imprimer la zone corespondante" ? ou si vous avez une autre idée, je suis
preneur, car c'est très fastidieux à la longue, d'autant plus que je pourrais
aller boire un café pendant la macro ;-) !
merci beaucoup pour votre aide

9 réponses

Avatar
Youky
Bonjour,
Je te conseille d'activer l'enregistreur de macro, de réaliser une première
fois ce que tu désires obtenir, et de poster le code ici si tu ne
réussis pas à l'automatiser.
Qlq précisions
on c'est pas par ou commencer
La zone d'impression utilise combien de colonnes ?
La colonne Fournisseurs est-elle en colonne A ?
Si oui quel autre colonne est triée?
Veux tu imprimer tous les founisseurs à la suite dans la macro
Tout sur la mm page ou 1 page par founisseur ?
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de news:

bonjour,
j'utilise un tableau qui retrace les expéditions vers mes fournisseurs. Je
dois imprimer pour chaque fournisseur la ou les lignes qui lui
correspondent.

Aujourd'hui, j'utilise le filtre automatique où je sélectionne un par un
mes

fournisseurs, puis je définis la zone d'impression et enfin imprimer.
pourriez vous m'aider à trouver une macro du style "sélectionner le
critère

suivant" (attention : mes fournisseurs ne sont pas toujours les mêmes )
puis

"imprimer la zone corespondante" ? ou si vous avez une autre idée, je suis
preneur, car c'est très fastidieux à la longue, d'autant plus que je
pourrais

aller boire un café pendant la macro ;-) !
merci beaucoup pour votre aide


Avatar
Patrick BASTARD
Bonjour, *Youky*

Je cite :
Bonjour,
Je te conseille d'activer l'enregistreur de macro, de réaliser une
première fois ce que tu désires obtenir, et de poster le code ici si
tu ne
réussis pas à l'automatiser.


Je commente :
*******************
* PLAGIAIRE !!! *
*******************
rofl rofl rofl

--
Bien amicordialement quand même,
P. Bastard

Qlq précisions
on c'est pas par ou commencer
La zone d'impression utilise combien de colonnes ?
La colonne Fournisseurs est-elle en colonne A ?
Si oui quel autre colonne est triée?
Veux tu imprimer tous les founisseurs à la suite dans la macro
Tout sur la mm page ou 1 page par founisseur ?
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de news:

bonjour,
j'utilise un tableau qui retrace les expéditions vers mes
fournisseurs. Je dois imprimer pour chaque fournisseur la ou les
lignes qui lui correspondent. Aujourd'hui, j'utilise le filtre
automatique où je sélectionne un par un mes fournisseurs, puis je
définis la zone d'impression et enfin imprimer. pourriez vous
m'aider à trouver une macro du style "sélectionner le critère
suivant" (attention : mes fournisseurs ne sont pas toujours les
mêmes ) puis "imprimer la zone corespondante" ? ou si vous avez une
autre idée, je suis preneur, car c'est très fastidieux à la longue,
d'autant plus que je pourrais aller boire un café pendant la macro
;-) !
merci beaucoup pour votre aide




Avatar
Dvy
merci, j'y avais pensé... ;-) le pb est que je n'expédie pas aux mêmes
fournisseurs chaque jr... (ceux qui sont présents sur l'onglet de la veille,
ne le sont pas forcément le lendemain et vice versa). c pour ça que j'avais
pensé à une macro du style "fournisseur suivant" dans le filtre automatique,
pour m'éviter de rentrer un à un les noms des fournisseurs (il y en a 800
!!!). j'ai déjà essayé un truc dans VBA avec la fonction "offset", mais ça ne
marche pas avec la fonction "criteria" du filtre automatique, qui ne semble
accepter que du texte).
mes colonnes en revanche ne varient pas (j'utilise un onglet différent pour
chaque jour), ni l'entête de mon tableau ; cela donne :

programme quotidien du 29/07

expéditeur|N° cpte expéditeur|destinataire|N°cpte destinataire|réf.| N°
Demande

la colonne fournisseur est en C (destinataire) ;
oui, je veux imprimer les lignes de chaque fournisseur un à un à la suite
sur une page différente pour chaque fournisseur.
sinon je n'ai pas le code ici pcq il est au boulot mais tant pis je zapperai
la pause café s'il faut vraiment que je le poste... ;-)
j'espère avoir été plus clair,
merci de m'avoir répondu


Bonjour,
Je te conseille d'activer l'enregistreur de macro, de réaliser une première
fois ce que tu désires obtenir, et de poster le code ici si tu ne
réussis pas à l'automatiser.
Qlq précisions
on c'est pas par ou commencer
La zone d'impression utilise combien de colonnes ?
La colonne Fournisseurs est-elle en colonne A ?
Si oui quel autre colonne est triée?
Veux tu imprimer tous les founisseurs à la suite dans la macro
Tout sur la mm page ou 1 page par founisseur ?
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de news:

bonjour,
j'utilise un tableau qui retrace les expéditions vers mes fournisseurs. Je
dois imprimer pour chaque fournisseur la ou les lignes qui lui
correspondent.

Aujourd'hui, j'utilise le filtre automatique où je sélectionne un par un
mes

fournisseurs, puis je définis la zone d'impression et enfin imprimer.
pourriez vous m'aider à trouver une macro du style "sélectionner le
critère

suivant" (attention : mes fournisseurs ne sont pas toujours les mêmes )
puis

"imprimer la zone corespondante" ? ou si vous avez une autre idée, je suis
preneur, car c'est très fastidieux à la longue, d'autant plus que je
pourrais

aller boire un café pendant la macro ;-) !
merci beaucoup pour votre aide







Avatar
jps
si c'est du beaujolais, je peux peut-être aider...
jps

"Youky" a écrit dans le message de news:
%
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de news:

bonjour,
j'utilise un tableau qui retrace les expéditions vers mes fournisseurs.
Je
dois imprimer pour chaque fournisseur la ou les lignes qui lui
correspondent.

Aujourd'hui, j'utilise le filtre automatique où je sélectionne un par un
mes

fournisseurs, puis je définis la zone d'impression et enfin imprimer.
pourriez vous m'aider à trouver une macro du style "sélectionner le
critère

suivant" (attention : mes fournisseurs ne sont pas toujours les mêmes )
puis

"imprimer la zone corespondante" ? ou si vous avez une autre idée, je
suis
preneur, car c'est très fastidieux à la longue, d'autant plus que je
pourrais

aller boire un café pendant la macro ;-) !
merci beaucoup pour votre aide






Avatar
Ricky
si c'est du beaujolais, je peux peut-être aider... à le boire ;)
jps
Avatar
Dvy
voici comme promis l'extrait du code :

Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 02/08/2005 par
'

'
Selection.AutoFilter Field:=3, Criteria1:="BORG WARNER"
Range("A1:G33").Select
Range("G33").Activate
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$33"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="BOURBON MORTEAU"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="CALEARO SRL"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="DAYCO CHIVASSO"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="FABRIS CHATELLERAULT"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="FAURECIA MARINES"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="GARCONNET ST NICOLAS"
Range("A1:G37").Select
Range("G37").Activate
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$37"
etc...

je n'ai pas tout mis de tte manière, vous l'aurez constaté, c tt le tps la
même chose : je change de fournisseur puis j'imprime à chaque fois ; il
m'arrive seulement d'avoir à rectifier la zone d'impression quand il me prend
pas les cellules
voila,
merci de votre aide


si c'est du beaujolais, je peux peut-être aider... à le boire ;)
jps




Avatar
Youky
Salut, Dry
Pour essai:
sur un nouveau classeur
En Feuil2
mets qlq lignes de tes fournisseurs
et un filtre auto en colonne C
la macro utilise aussi la colonne A et B de Feuil3

Sub ParFournisseur()
Sheets("Feuil3").Cells.ClearContents
Sheets("Feuil2").Select
Selection.AutoFilter Field:=1
Columns("C:C").Copy
Sheets("Feuil3").Select
Range("A1").Select
ActiveSheet.Paste
For lig = 2 To [A65000].End(xlUp).Row
If Cells(lig, 1) <> "" Then
n = n + 1
Cells(n, 2) = Cells(lig, 1)
For k = 1 To [A65000].End(xlUp).Row
If Cells(k, 1) = Cells(n, 2) Then Cells(k, 1) = ""
Next
End If
Next
Sheets("Feuil2").Activate
Sheets("Feuil2").Columns("C:C").Select
Selection.AutoFilter
For k = 1 To Sheets("Feuil3").[B65000].End(xlUp).Row
nom = Sheets("Feuil3").Cells(k, 2)
Selection.AutoFilter Field:=1, Criteria1:=nom
MsgBox nom
'ActiveWindow.SelectedSheets.PrintOut Copies:=1
Next
End Sub

Pour la définition de la zone d'impression, je ne pige pas
à moins que tu n'imprimes pas les colonnes aprés la G
Youky
"Dvy" a écrit dans le message de news:

voici comme promis l'extrait du code :

Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 02/08/2005 par
'

'
Selection.AutoFilter Field:=3, Criteria1:="BORG WARNER"
Range("A1:G33").Select
Range("G33").Activate
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$33"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="BOURBON MORTEAU"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="CALEARO SRL"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="DAYCO CHIVASSO"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="FABRIS CHATELLERAULT"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="FAURECIA MARINES"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter Field:=3, Criteria1:="GARCONNET ST NICOLAS"
Range("A1:G37").Select
Range("G37").Activate
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$37"
etc...

je n'ai pas tout mis de tte manière, vous l'aurez constaté, c tt le tps la
même chose : je change de fournisseur puis j'imprime à chaque fois ; il
m'arrive seulement d'avoir à rectifier la zone d'impression quand il me
prend

pas les cellules
voila,
merci de votre aide


si c'est du beaujolais, je peux peut-être aider... à le
boire ;)


jps






Avatar
Youky
Bonjour Patrick,
Je suis désolé, j'ai fais une copie machinale en pensant que la phrase était
courante au forum.
Je n'avais pas fait le rapprochement avec toi.
Excuse moi encore,
Youky
"Patrick BASTARD" a écrit dans le
message de news: Og#
Bonjour, *Youky*

Je cite :
Bonjour,
Je te conseille d'activer l'enregistreur de macro, de réaliser une
première fois ce que tu désires obtenir, et de poster le code ici si
tu ne
réussis pas à l'automatiser.


Je commente :
*******************
* PLAGIAIRE !!! *
*******************
rofl rofl rofl

--
Bien amicordialement quand même,
P. Bastard

Qlq précisions
on c'est pas par ou commencer
La zone d'impression utilise combien de colonnes ?
La colonne Fournisseurs est-elle en colonne A ?
Si oui quel autre colonne est triée?
Veux tu imprimer tous les founisseurs à la suite dans la macro
Tout sur la mm page ou 1 page par founisseur ?
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de news:

bonjour,
j'utilise un tableau qui retrace les expéditions vers mes
fournisseurs. Je dois imprimer pour chaque fournisseur la ou les
lignes qui lui correspondent. Aujourd'hui, j'utilise le filtre
automatique où je sélectionne un par un mes fournisseurs, puis je
définis la zone d'impression et enfin imprimer. pourriez vous
m'aider à trouver une macro du style "sélectionner le critère
suivant" (attention : mes fournisseurs ne sont pas toujours les
mêmes ) puis "imprimer la zone corespondante" ? ou si vous avez une
autre idée, je suis preneur, car c'est très fastidieux à la longue,
d'autant plus que je pourrais aller boire un café pendant la macro
;-) !
merci beaucoup pour votre aide








Avatar
Patrick BASTARD
Bonjour, *Youky*
J'ai lu ton post OggIW6$
avec le plus grand intéret :

C'était un joke, Youki, ne sois surtout pas désolé, j'en serais moi-même ...
désolé.
No problémo.

--
Bien amicordialement, toujours
P. Bastard


Bonjour Patrick,
Je suis désolé, j'ai fais une copie machinale en pensant que la
phrase était courante au forum.
Je n'avais pas fait le rapprochement avec toi.
Excuse moi encore,
Youky
"Patrick BASTARD" a écrit dans le
message de news: Og#
Bonjour, *Youky*

Je cite :
Bonjour,
Je te conseille d'activer l'enregistreur de macro, de réaliser une
première fois ce que tu désires obtenir, et de poster le code ici si
tu ne
réussis pas à l'automatiser.


Je commente :
*******************
* PLAGIAIRE !!! *
*******************
rofl rofl rofl

--
Bien amicordialement quand même,
P. Bastard

Qlq précisions
on c'est pas par ou commencer
La zone d'impression utilise combien de colonnes ?
La colonne Fournisseurs est-elle en colonne A ?
Si oui quel autre colonne est triée?
Veux tu imprimer tous les founisseurs à la suite dans la macro
Tout sur la mm page ou 1 page par founisseur ?
Veux tu boire un café entre chaque fournisseurs ? ?
Youky

"Dvy" a écrit dans le message de
news:
bonjour,
j'utilise un tableau qui retrace les expéditions vers mes
fournisseurs. Je dois imprimer pour chaque fournisseur la ou les
lignes qui lui correspondent. Aujourd'hui, j'utilise le filtre
automatique où je sélectionne un par un mes fournisseurs, puis je
définis la zone d'impression et enfin imprimer. pourriez vous
m'aider à trouver une macro du style "sélectionner le critère
suivant" (attention : mes fournisseurs ne sont pas toujours les
mêmes ) puis "imprimer la zone corespondante" ? ou si vous avez une
autre idée, je suis preneur, car c'est très fastidieux à la longue,
d'autant plus que je pourrais aller boire un café pendant la macro
;-) !
merci beaucoup pour votre aide