Je souhaiterais l'imprimer sur A4 vertical mais de fa=E7on =E0 =E9conomis=
er de=20
la place en 2 colonnes (fa=E7on "Word" :-)
Je le fais actuellement "=E0 la main" mais c'est lourd.
L'aspect final devrait =EAtre:
A B C D A B C D
TitreTitreTitreTitre TitreTitreTitreTitre
No Auteur Titre Ann=E9e No Auteur Titre Ann=E9e
1 Blabla Blibli 2007 66 Bloblo Blublu 1998
2 67
3 68
4 69
=2E.. ...
pour la page 1
Les lignes No 1 et 2 sont dans l'ent=EAte
Le contenu du fichier commence =E0 la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aper=E7u d'impression plut=F4=
t=20
que dans l'impression directe.
De plus, il faudrait qu'apr=E8s cette impression, le fichier reprenne sa =
forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive =
pas =E0 les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous =EAtes non=20
seulement bons, mais excellents :-))
Sub test() Dim Ctr1 As Integer, Ctr2 As Integer Ctr2 = Range("A65536").End(xlUp).Row / 2 Ctr1 = Range("A65536").End(xlUp).Row - Ctr2 Range(Cells(Ctr1 + 1, 1), Cells(Ctr1 + Ctr2, 4)).Cut Cells(1, 5) End Sub
Cordialement. Daniel "Pierre F." a écrit dans le message de news: 4463e$45e82482$55da2a7a$ Bonjour;
J'ai un fichier de 310 lignes sur 4 colonnes
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économiser de la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D TitreTitreTitreTitre TitreTitreTitreTitre No Auteur Titre Année No Auteur Titre Année 1 Blabla Blibli 2007 66 Bloblo Blublu 1998 2 67 3 68 4 69 ... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plutôt que dans l'impression directe. De plus, il faudrait qu'après cette impression, le fichier reprenne sa forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non seulement bons, mais excellents :-))
Cordialement, Pierre F.
Bonjour.
Essaie :
Sub test()
Dim Ctr1 As Integer, Ctr2 As Integer
Ctr2 = Range("A65536").End(xlUp).Row / 2
Ctr1 = Range("A65536").End(xlUp).Row - Ctr2
Range(Cells(Ctr1 + 1, 1), Cells(Ctr1 + Ctr2, 4)).Cut Cells(1, 5)
End Sub
Cordialement.
Daniel
"Pierre F." <pfornerodNO@SPAMhotmail.com> a écrit dans le message de news:
4463e$45e82482$55da2a7a$28210@news.hispeed.ch...
Bonjour;
J'ai un fichier de 310 lignes sur 4 colonnes
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économiser de
la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D
TitreTitreTitreTitre TitreTitreTitreTitre
No Auteur Titre Année No Auteur Titre Année
1 Blabla Blibli 2007 66 Bloblo Blublu 1998
2 67
3 68
4 69
... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête
Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plutôt
que dans l'impression directe.
De plus, il faudrait qu'après cette impression, le fichier reprenne sa
forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive
pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non
seulement bons, mais excellents :-))
Sub test() Dim Ctr1 As Integer, Ctr2 As Integer Ctr2 = Range("A65536").End(xlUp).Row / 2 Ctr1 = Range("A65536").End(xlUp).Row - Ctr2 Range(Cells(Ctr1 + 1, 1), Cells(Ctr1 + Ctr2, 4)).Cut Cells(1, 5) End Sub
Cordialement. Daniel "Pierre F." a écrit dans le message de news: 4463e$45e82482$55da2a7a$ Bonjour;
J'ai un fichier de 310 lignes sur 4 colonnes
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économiser de la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D TitreTitreTitreTitre TitreTitreTitreTitre No Auteur Titre Année No Auteur Titre Année 1 Blabla Blibli 2007 66 Bloblo Blublu 1998 2 67 3 68 4 69 ... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plutôt que dans l'impression directe. De plus, il faudrait qu'après cette impression, le fichier reprenne sa forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non seulement bons, mais excellents :-))
Cordialement, Pierre F.
JB
Bonjour,
Voir onglets 'conversion tableau' et 'imprime colonnes'.
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économis er de la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D TitreTitreTitreTitre TitreTitreTitreTitre No Auteur Titre Année No Auteur Titre Année 1 Blabla Blibli 2007 66 Bloblo Blublu 1998 2 67 3 68 4 69 ... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plut ôt que dans l'impression directe. De plus, il faudrait qu'après cette impression, le fichier reprenne sa forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non seulement bons, mais excellents :-))
Cordialement, Pierre F.
Bonjour,
Voir onglets 'conversion tableau' et 'imprime colonnes'.
On 2 mar, 14:20, "Pierre F." <pfornero...@SPAMhotmail.com> wrote:
Bonjour;
J'ai un fichier de 310 lignes sur 4 colonnes
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économis er de
la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D
TitreTitreTitreTitre TitreTitreTitreTitre
No Auteur Titre Année No Auteur Titre Année
1 Blabla Blibli 2007 66 Bloblo Blublu 1998
2 67
3 68
4 69
... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête
Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plut ôt
que dans l'impression directe.
De plus, il faudrait qu'après cette impression, le fichier reprenne sa
forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive
pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non
seulement bons, mais excellents :-))
Je souhaiterais l'imprimer sur A4 vertical mais de façon à économis er de la place en 2 colonnes (façon "Word" :-)
Je le fais actuellement "à la main" mais c'est lourd.
L'aspect final devrait être:
A B C D A B C D TitreTitreTitreTitre TitreTitreTitreTitre No Auteur Titre Année No Auteur Titre Année 1 Blabla Blibli 2007 66 Bloblo Blublu 1998 2 67 3 68 4 69 ... ...
pour la page 1
Les lignes No 1 et 2 sont dans l'entête Le contenu du fichier commence à la ligne 3
La page 2 pourrait commencer au No 131... (-> env 130 lignes par page)
Je souhaiterais que la macro aboutisse dans l'aperçu d'impression plut ôt que dans l'impression directe. De plus, il faudrait qu'après cette impression, le fichier reprenne sa forme habituelle :-)
J'ai pu trouver quelques exemples de macros sur le net, mais je n'arrive pas à les faire tourner.
Je sais que je demande beaucoup... mais je sais que vous êtes non seulement bons, mais excellents :-))
Cordialement, Pierre F.
Pierre F.
Bonjour, Voir onglets 'conversion tableau' et 'imprime colonnes'. http://boisgontierj.free.fr/fichiers/jb-impressions.zip
Merci pour ta réponse;
La macro me pose un problème; elle bloque à la ligne:
a) Je souhaiterais décaler d'une colonne le déplacement (commencer en F) b) Qu'il n'écrive rien sur les lignes 1 et 2
:-) que dois-je modifier ?
Sub test() Dim Ctr1 As Integer, Ctr2 As Integer Ctr2 = Range("A65536").End(xlUp).Row / 2 Ctr1 = Range("A65536").End(xlUp).Row - Ctr2 Range(Cells(Ctr1 + 1, 1), Cells(Ctr1 + Ctr2, 4)).Cut Cells(1, 6) Range("A1:A2").EntireRow.Insert End Sub
Daniel
Pierre F.
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)... On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que celle du milieu soit plus épaisse. Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner l'épaisseur des bordures... mais il est vrai que je manie très mal ce langage :-)
Cordialement, Pierre F.
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)...
On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que
celle du milieu soit plus épaisse.
Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te
à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner
l'épaisseur des bordures... mais il est vrai que je manie très mal ce
langage :-)
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)... On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que celle du milieu soit plus épaisse. Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner l'épaisseur des bordures... mais il est vrai que je manie très mal ce langage :-)
Cordialement, Pierre F.
JB
http://cjoint.com/?dcu6PVzi17
Sub Imprime() FeuilleConvertir = "ConversionTableau" ligneSource = 2 ' ligne de départ largeurSource = 4 ' largeur source (nb colonnnes) hpageDest = 30 ' hauteur page destination ncolDest = 2 ' nb colonnes desintation ligneDest = 2 '-------- nbenreg = Sheets(FeuilleConvertir).Cells(ligneSource, 1).CurrentRegion.Rows.Count Sheets("edition").ResetAllPageBreaks Sheets("edition").Cells.Clear For col = 1 To ncolDest ' en têtes de colonne Sheets(FeuilleConvertir).Cells(ligneSource - 1, 1).Resize(1, largeurSource).Copy _ Sheets("edition").Cells(1, (col - 1) * largeurSource + 1) Next col '-- Do While Sheets(FeuilleConvertir).Cells(ligneSource, 1) <> "" For col = 1 To ncolDest Cells(ligneSource, 1).Resize(hpageDest, largeurSource).Copy _ Sheets("edition").Cells(ligneDest, (col - 1) * largeurSource + 1) Sheets("edition").Cells(ligneDest, (col - 1) * _ largeurSource + 1).Resize(hpageDest, largeurSource).BorderAround Weight:=xlMedium ligneSource = ligneSource + hpageDest Next '-- Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeTop).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeLeft).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeRight).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeBottom).LineStyle = xlNone '-- Sheets("edition").HPageBreaks.Add Before:Îlls(ligneDest + hpageDest, 1) ligneDest = ligneDest + hpageDest Loop Sheets("edition").Select ActiveSheet.PrintPreview End Sub
JB
On 2 mar, 18:52, "Pierre F." wrote:
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)... On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que celle du milieu soit plus épaisse. Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner l'épaisseur des bordures... mais il est vrai que je manie très mal ce langage :-)
Cordialement, Pierre F.
http://cjoint.com/?dcu6PVzi17
Sub Imprime()
FeuilleConvertir = "ConversionTableau"
ligneSource = 2 ' ligne de départ
largeurSource = 4 ' largeur source (nb colonnnes)
hpageDest = 30 ' hauteur page destination
ncolDest = 2 ' nb colonnes desintation
ligneDest = 2
'--------
nbenreg = Sheets(FeuilleConvertir).Cells(ligneSource,
1).CurrentRegion.Rows.Count
Sheets("edition").ResetAllPageBreaks
Sheets("edition").Cells.Clear
For col = 1 To ncolDest ' en têtes de colonne
Sheets(FeuilleConvertir).Cells(ligneSource - 1, 1).Resize(1,
largeurSource).Copy _
Sheets("edition").Cells(1, (col - 1) * largeurSource + 1)
Next col
'--
Do While Sheets(FeuilleConvertir).Cells(ligneSource, 1) <> ""
For col = 1 To ncolDest
Cells(ligneSource, 1).Resize(hpageDest, largeurSource).Copy _
Sheets("edition").Cells(ligneDest, (col - 1) * largeurSource +
1)
Sheets("edition").Cells(ligneDest, (col - 1) * _
largeurSource + 1).Resize(hpageDest, largeurSource).BorderAround
Weight:=xlMedium
ligneSource = ligneSource + hpageDest
Next
'--
Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest,
largeurSource * ncolDest).Borders(xlEdgeTop).LineStyle = xlNone
Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest,
largeurSource * ncolDest).Borders(xlEdgeLeft).LineStyle = xlNone
Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest,
largeurSource * ncolDest).Borders(xlEdgeRight).LineStyle = xlNone
Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest,
largeurSource * ncolDest).Borders(xlEdgeBottom).LineStyle = xlNone
'--
Sheets("edition").HPageBreaks.Add Before:=Cells(ligneDest +
hpageDest, 1)
ligneDest = ligneDest + hpageDest
Loop
Sheets("edition").Select
ActiveSheet.PrintPreview
End Sub
JB
On 2 mar, 18:52, "Pierre F." <pfornero...@SPAMhotmail.com> wrote:
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)...
On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que
celle du milieu soit plus épaisse.
Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te
à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner
l'épaisseur des bordures... mais il est vrai que je manie très mal ce
langage :-)
Sub Imprime() FeuilleConvertir = "ConversionTableau" ligneSource = 2 ' ligne de départ largeurSource = 4 ' largeur source (nb colonnnes) hpageDest = 30 ' hauteur page destination ncolDest = 2 ' nb colonnes desintation ligneDest = 2 '-------- nbenreg = Sheets(FeuilleConvertir).Cells(ligneSource, 1).CurrentRegion.Rows.Count Sheets("edition").ResetAllPageBreaks Sheets("edition").Cells.Clear For col = 1 To ncolDest ' en têtes de colonne Sheets(FeuilleConvertir).Cells(ligneSource - 1, 1).Resize(1, largeurSource).Copy _ Sheets("edition").Cells(1, (col - 1) * largeurSource + 1) Next col '-- Do While Sheets(FeuilleConvertir).Cells(ligneSource, 1) <> "" For col = 1 To ncolDest Cells(ligneSource, 1).Resize(hpageDest, largeurSource).Copy _ Sheets("edition").Cells(ligneDest, (col - 1) * largeurSource + 1) Sheets("edition").Cells(ligneDest, (col - 1) * _ largeurSource + 1).Resize(hpageDest, largeurSource).BorderAround Weight:=xlMedium ligneSource = ligneSource + hpageDest Next '-- Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeTop).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeLeft).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeRight).LineStyle = xlNone Sheets("edition").Cells(ligneDest, 1).Resize(hpageDest, largeurSource * ncolDest).Borders(xlEdgeBottom).LineStyle = xlNone '-- Sheets("edition").HPageBreaks.Add Before:Îlls(ligneDest + hpageDest, 1) ligneDest = ligneDest + hpageDest Loop Sheets("edition").Select ActiveSheet.PrintPreview End Sub
JB
On 2 mar, 18:52, "Pierre F." wrote:
Il faut adapter le nom de feuille à convertir et la hauteur de page
OK; ça marche maintenant :-)... On est pas loin de la perfection...
mais bien sûr, plus on avance plus ça se complique :-))
La macro me fait automatiquement des bordures ... ce qui est très bien !!
Juste que souhaiterais que les bordures latérales n'existent pas et que celle du milieu soit plus épaisse. Bien sûr je sais le faire à la main :-) mais si j'enregistre mes ges te à la main, la macro devient tout de suite plus lourde!
Et je n'ai rien trouvé dans ta procédure qui pourrait concerner l'épaisseur des bordures... mais il est vrai que je manie très mal ce langage :-)