Ajuster zone d'impression
Résolu/Fermé
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
-
13 juil. 2015 à 16:14
a51432 Messages postés 37 Date d'inscription lundi 13 juillet 2015 Statut Membre Dernière intervention 20 octobre 2015 - 17 juil. 2015 à 14:56
a51432 Messages postés 37 Date d'inscription lundi 13 juillet 2015 Statut Membre Dernière intervention 20 octobre 2015 - 17 juil. 2015 à 14:56
A voir également:
- Ajuster zone d'impression
- Spouleur d'impression - Guide
- Zone telechargement - Guide
- Impression ecran windows - Guide
- Fatima a lancé l'impression de plusieurs documents, mais elle se rend compte qu'il n'y a presque plus d'encre dans l'imprimante. elle décide alors de n'imprimer que son cv, en un seul exemplaire. faites les opérations nécessaires dans le gestionnaire d'impression ci-dessous. ✓ - Forum Word
- Appel data zone franche - Forum Consommation & Internet
3 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
14 juil. 2015 à 06:52
14 juil. 2015 à 06:52
Bonjour
En Supposant que le tableau commence en A1
Enlevez la coche de la dernière ligne si vous voulez lancer directement l'impression, n'ayant pas d'imprimante pour tester, je n'ai pas pu le vérifier
Cdlt
En Supposant que le tableau commence en A1
Sub ZoneImpression() Application.ScreenUpdating = False DerLig = [A10000].End(xlUp).Row DerCol = [Xfd1].End(xlToLeft).Column Tableau = Cells(1, 1).Address & ":" & Cells(DerLig, DerCol).Address Range(Tableau).Select ActiveSheet.PageSetup.PrintArea = Tableau ActiveWindow.View = xlPageBreakPreview NbPage = ActiveSheet.HPageBreaks.Count + 1 ActiveWindow.View = xlNormalView 'Formatage avant impression With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "" .RightFooter = "" .LeftMargin = Application.InchesToPoints(0) .RightMargin = Application.InchesToPoints(0) .TopMargin = Application.InchesToPoints(0) .BottomMargin = Application.InchesToPoints(0) .HeaderMargin = Application.InchesToPoints(0) .FooterMargin = Application.InchesToPoints(0) .PrintHeadings = False .PrintGridlines = False .PrintComments = xlPrintNoComments .CenterHorizontally = False .CenterVertically = False .Orientation = xlPortrait .Draft = False .PaperSize = xlPaperLetter .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False .FitToPagesWide = 1 .FitToPagesTall = NbPage .PrintErrors = xlPrintErrorsDisplayed .OddAndEvenPagesHeaderFooter = False .DifferentFirstPageHeaderFooter = False .ScaleWithDocHeaderFooter = True .AlignMarginsHeaderFooter = True .EvenPage.LeftHeader.Text = "" .EvenPage.CenterHeader.Text = "" .EvenPage.RightHeader.Text = "" .EvenPage.LeftFooter.Text = "" .EvenPage.CenterFooter.Text = "" .EvenPage.RightFooter.Text = "" .FirstPage.LeftHeader.Text = "" .FirstPage.CenterHeader.Text = "" .FirstPage.RightHeader.Text = "" .FirstPage.LeftFooter.Text = "" .FirstPage.CenterFooter.Text = "" .FirstPage.RightFooter.Text = "" End With 'ExecuteExcel4Macro "PRINT(1,,,1,,TRUE,,,,,,1,,,TRUE,,FALSE)" End Sub
Enlevez la coche de la dernière ligne si vous voulez lancer directement l'impression, n'ayant pas d'imprimante pour tester, je n'ai pas pu le vérifier
Cdlt
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
15 juil. 2015 à 16:13
15 juil. 2015 à 16:13
Après plusieurs essais je constate que mon problème est toujours là. En effet, quand j'utilise le bouton "appercu des sauts de page", je constate que toutes les colonnes de mon tableau en largeur ne sont pas sur 1 seule page.
Auriez-vous une solution pour que le tableau tienne sur une seule page en largeur ? Merci
Auriez-vous une solution pour que le tableau tienne sur une seule page en largeur ? Merci
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
15 juil. 2015 à 16:49
15 juil. 2015 à 16:49
Bonjour
j'utilise le bouton "aperçu des sauts de page", je constate que toutes les colonnes de mon tableau en largeur ne sont pas sur 1 seule page.
L'aperçu, vous le faites après avoir lancer la macro ou bien avant?
Voici un fichier avec 88 colonnes sur plus de 2000 lignes, pour bien vérifier que cela fonctionne, j'ai colorer la dernière colonne en jaune pour m'assurer qu'elle tient bien sur une seule feuille en largeur
https://www.cjoint.com/c/EGpoPDMENcw
Quand vous lancez le programme et que vous voulez voir l'aperçu avant impression, quand s'ouvre la fenêtre"Imprimer", n'oubliez pas de cocher "Sélection" dans le pavé "Impression", vous verrez que la bande jaune est bien dans la feuille.
faite le test.
cdlt
j'utilise le bouton "aperçu des sauts de page", je constate que toutes les colonnes de mon tableau en largeur ne sont pas sur 1 seule page.
L'aperçu, vous le faites après avoir lancer la macro ou bien avant?
Voici un fichier avec 88 colonnes sur plus de 2000 lignes, pour bien vérifier que cela fonctionne, j'ai colorer la dernière colonne en jaune pour m'assurer qu'elle tient bien sur une seule feuille en largeur
https://www.cjoint.com/c/EGpoPDMENcw
Quand vous lancez le programme et que vous voulez voir l'aperçu avant impression, quand s'ouvre la fenêtre"Imprimer", n'oubliez pas de cocher "Sélection" dans le pavé "Impression", vous verrez que la bande jaune est bien dans la feuille.
faite le test.
cdlt
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
15 juil. 2015 à 17:14
15 juil. 2015 à 17:14
Je ne peux malheuresement pas télecharger le document sur mon lieu de travail. Je testerai en rentrant. Pour le moment, le code ne fonctionne pas pour l'une de mes feuilles et je ne comprends pas pourquoi. J'utilise bien le bouton "apercu des sauts de page" après utilisation de la macro
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
15 juil. 2015 à 17:17
15 juil. 2015 à 17:17
Et quand je tente de lancer l'impression, toutes les colonnes ne sont pas prises en compte pour la feuille en question.
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
15 juil. 2015 à 17:29
15 juil. 2015 à 17:29
Je crois que j'ai compris, dans mon programme, je recherche la dernière colonne remplie sur la ligne 1 (généralement la ligne des entêtes), il y a de fortes chances que le N° de la dernière colonne de ligne 1 soit inférieur au numéro de la colonne qui contient la ligne la plus chargée. Si c'est le cas, 2 solutions: soit vous complétez la ligne de titres de telle manière à couvrir toutes les colonnes remplies, sinon remplacez la ligne suivante
DerCol = [Xfd1].End(xlToLeft).Column
par
DerCol = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Column
Si c'est ce que je pense, ça devrait marcher.
cdlt
DerCol = [Xfd1].End(xlToLeft).Column
par
DerCol = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Column
Si c'est ce que je pense, ça devrait marcher.
cdlt
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
15 juil. 2015 à 17:48
15 juil. 2015 à 17:48
Dim Feuille As Worksheet
Dim derLigImp As Long
Dim derColImp As Long
For Each Feuille In ActiveWorkbook.Worksheets
If Feuille.Cells(15, 1) = "" Then
derColImp = Cells(17, Cells.Columns.Count).End(xlToLeft).Column
Else
derColImp = Cells(15, Cells.Columns.Count).End(xlToLeft).Column
End If
derLigImp = Range("A" & Rows.Count).End(xlUp).Row
Tableau = Cells(1, 1).Address & ":" & Cells(derLigImp, derColImp).Address
Range(Tableau).Select
ActiveSheet.PageSetup.PrintArea = Tableau
ActiveWindow.View = xlPageBreakPreview
NbPage = ActiveSheet.HPageBreaks.Count + 1
ActiveWindow.View = xlNormalView
J'avais modifié le code de cette manière pour aller chercher la dernière colonne sur la bonne ligne mais cela ne fonctionne tout de même pas.
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
15 juil. 2015 à 19:10
15 juil. 2015 à 19:10
Bonsoir
Le problème, c'est que si vous aviez suivi le code que je vous ai fourni, il y a avait un élément qui limitait le nombre de feuille en largeur, chose qui n'apparait pas dans votre code.
la ligne en question:
A corriger
cdlt
Le problème, c'est que si vous aviez suivi le code que je vous ai fourni, il y a avait un élément qui limitait le nombre de feuille en largeur, chose qui n'apparait pas dans votre code.
la ligne en question:
.FitToPagesWide = 1
A corriger
cdlt
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
16 juil. 2015 à 09:09
16 juil. 2015 à 09:09
Bonjour;
Cette ligne apparaît bien dans mon code, j'ai uniquement mis la partie modifiée, la suite du code est identique à celle que tu m'as fournie.
Cdlt
Cette ligne apparaît bien dans mon code, j'ai uniquement mis la partie modifiée, la suite du code est identique à celle que tu m'as fournie.
Cdlt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
Modifié par Frenchie83 le 16/07/2015 à 09:36
Modifié par Frenchie83 le 16/07/2015 à 09:36
Bonjour
Il y a pourtant bien un élément qui traîne quelque part, est-il en dehors de la dernière colonne? en clair Quelle est la dernière colonne de la ligne 15 ou 17, et quelle est la dernière colonne visible sur l'aperçu?
Je dois m'absenter pour la journée, je regarderai ce soir
Cdlt
Il y a pourtant bien un élément qui traîne quelque part, est-il en dehors de la dernière colonne? en clair Quelle est la dernière colonne de la ligne 15 ou 17, et quelle est la dernière colonne visible sur l'aperçu?
Je dois m'absenter pour la journée, je regarderai ce soir
Cdlt
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
16 juil. 2015 à 15:37
16 juil. 2015 à 15:37
Pour la page avec laquelle ça ne fonctionne pas, la ligne en question est la 15 et la dernière colonne sur cette ligne est la M. Hors sur l'aperçu avant impression, il ne prend que jusqu'à la D. En regardant avec le bouton "Aperçu des sauts de page", je constate qu'il prend bien toute la zone (jusqu'à la colonne M) mais il y a plusieurs pages en largeur séparées par des pointillés.
PlacageGranby
Messages postés
393
Date d'inscription
mercredi 26 mars 2014
Statut
Membre
Dernière intervention
7 mars 2019
26
16 juil. 2015 à 16:15
16 juil. 2015 à 16:15
Bonjour,
La macro ajuste la page active.
Est-ce que vous appelez la macro pour chaque page ?
Si la ligne de référence pour le nombre de colonne change est différente d'un onglet à un autre alors je crois qu'il y a un problème.
A moins de copier la macro pour chaque onglet et ajuster la ligne de référence dans chaque copie.
Si ce n'est pas aucune de ces deux pistes. alors il y a un détail qui nous échappe. Il est très difficile de trouver sans avoir le fichier pour tester.
S'il est possible de mettre à disposition votre fichier excel (exempt de données confidentielle) via un site comme www.cjoint.com, alors il sera beaucoup plus facile pour les membres du forum de trouver le problème.
La macro ajuste la page active.
Est-ce que vous appelez la macro pour chaque page ?
Si la ligne de référence pour le nombre de colonne change est différente d'un onglet à un autre alors je crois qu'il y a un problème.
A moins de copier la macro pour chaque onglet et ajuster la ligne de référence dans chaque copie.
Si ce n'est pas aucune de ces deux pistes. alors il y a un détail qui nous échappe. Il est très difficile de trouver sans avoir le fichier pour tester.
S'il est possible de mettre à disposition votre fichier excel (exempt de données confidentielle) via un site comme www.cjoint.com, alors il sera beaucoup plus facile pour les membres du forum de trouver le problème.
a51432
Messages postés
37
Date d'inscription
lundi 13 juillet 2015
Statut
Membre
Dernière intervention
20 octobre 2015
1
16 juil. 2015 à 17:51
16 juil. 2015 à 17:51
Je le fais en effet pour chaque page avec un For each ... next et même en essayant de mettre le code uniquement pour la feuille ca n'a pas fonctionné. J'essaye de vous transmettre un classeur demain et je mettrai tout mon code.
15 juil. 2015 à 16:00