bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la z ône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ? ?
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la z ône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ? ?
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la z ône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ? ?
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" a écrit dans le message de news:
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" <gilles@discussions.microsoft.com> a écrit dans le message de news:
A96BA2CF-99CF-4B5E-A17F-B8A4200A7FB5@microsoft.com...
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" a écrit dans le message de news:
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...
pages à l'aperçu, par onglet
Le code de Steph ... j'ai encore kek onglets qui
persistent à 2 pages
pages à l'aperçu, par onglet
Le code de Steph ... j'ai encore kek onglets qui
persistent à 2 pages
pages à l'aperçu, par onglet
Le code de Steph ... j'ai encore kek onglets qui
persistent à 2 pages
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" a écrit dans le message de
news:
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les
pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire
aujourd'hui,
mais à chaque jour suffit sa peine...
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" <gilles@discussions.microsoft.com> a écrit dans le message de
news:
A96BA2CF-99CF-4B5E-A17F-B8A4200A7FB5@microsoft.com...
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les
pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire
aujourd'hui,
mais à chaque jour suffit sa peine...
Comme la macro utilise l'index des feuilles pour
déterminer celle qui seront imprimés, tu aurais
avantage à protéger TON CLASSEUR pour
empêcher qu'un usager modifie l'ordre des
onglets de la feuille.
PrintArea = "$A$1:$A$50"
la même plage pour toutes les feuilles
Tu ne peux déterminer qu'une plage à imprimer à la fois.
Au besoin avant de lancer l'impression, il est toujours possible
de masquer des lignes ou colonnes que l'on ne désire pas
imprimer.
'-----------------------------------------
Sub repriseMarges()
With ThisWorkbook
For i = 6 To Worksheets.Count
With Worksheets(i)
.PageSetup.PrintArea = "$A$1:$A$50"
'Tu remplace par PrintOut pour imprimer
.PrintPreview
.PageSetup.PrintArea = ""
End With
Next
End With
End Sub
'-----------------------------------------
"gilles" a écrit dans le message de
news:
bonjour,
sur un fichier avec 50 onglets, en xp et en xl2003,
tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
d'impression fait 2, 4 pages
comment faire par macro pour imposer la zone d'impression à toutes les
pages
du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
ci dessous code essayé sans succès:
Sub repriseMarges()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For i = 6 To ActiveWorkbook.Sheets.Count
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
ActiveWindow.View = xlNormalView
ActiveWindow.SmallScroll Down:=6
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.View = xlNormalView
Next i
End Sub
MERCI de votre aide
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire
aujourd'hui,
mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" a écrit dans le message d e news:
>
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" <gil...@discussions.microsoft.com> a écrit dans le message d e news:
> A96BA2CF-99CF-4B5E-A17F-B8A4200A7...@microsoft.com...
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" a écrit dans le message d e news:
>
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" a écrit dans le message d e news:
>
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" <gil...@discussions.microsoft.com> a écrit dans le message d e news:
> A96BA2CF-99CF-4B5E-A17F-B8A4200A7...@microsoft.com...
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 e t 9
pages à l'aperçu, par onglet
de plus, le code ne ferme pas l'aperçu, à chaque onglet
Le code de Steph semble mieux, mais bizarrement j'ai encore kek onglets q ui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"michdenis" a écrit :
> Comme la macro utilise l'index des feuilles pour
> déterminer celle qui seront imprimés, tu aurais
> avantage à protéger TON CLASSEUR pour
> empêcher qu'un usager modifie l'ordre des
> onglets de la feuille.
> PrintArea = "$A$1:$A$50"
> la même plage pour toutes les feuilles
> Tu ne peux déterminer qu'une plage à imprimer à la fois.
> Au besoin avant de lancer l'impression, il est toujours possible
> de masquer des lignes ou colonnes que l'on ne désire pas
> imprimer.
> '-----------------------------------------
> Sub repriseMarges()
> With ThisWorkbook
> For i = 6 To Worksheets.Count
> With Worksheets(i)
> .PageSetup.PrintArea = "$A$1:$A$50"
> 'Tu remplace par PrintOut pour imprimer
> .PrintPreview
> .PageSetup.PrintArea = ""
> End With
> Next
> End With
> End Sub
> '-----------------------------------------
> "gilles" a écrit dans le message d e news:
>
> bonjour,
> sur un fichier avec 50 onglets, en xp et en xl2003,
> tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, la zône
> d'impression fait 2, 4 pages
> comment faire par macro pour imposer la zone d'impression à toutes le s pages
> du classeur, à partir de l'onglet 6 , sans le faire onglet par onglet ??
> ci dessous code essayé sans succès:
> Sub repriseMarges()
> Application.ScreenUpdating = False
> Application.DisplayAlerts = False
> For i = 6 To ActiveWorkbook.Sheets.Count
> ActiveWindow.View = xlPageBreakPreview
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$29"
> ActiveSheet.PageSetup.PrintArea = "$A$1:$A$50"
> ActiveWindow.View = xlNormalView
> ActiveWindow.SmallScroll Down:=6
> ActiveWindow.SelectedSheets.PrintPreview
> ActiveWindow.SmallScroll Down:=-15
> ActiveWindow.View = xlNormalView
> Next i
> End Sub
> MERCI de votre aide
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd 'hui,
> mais à chaque jour suffit sa peine...
Re,
..attention, si tu dis que
....le code de Michel ... j'ai toujours etr 2 et 9
> pages à l'aperçu, par onglet
..
> Le code de Steph ... j'ai encore kek onglets qui
> persistent à 2 pages
tu as demandé selon ma compréhension de définir la même zone
d'impression pour tous les onglets de feuille de calcul à partir du
6ème.
Cela ne remets en cause le nombre de pages nécessaires pour
l'affichage des zones correspondantes de chaque onglet
--
lSteph
Re,
..attention, si tu dis que
....le code de Michel ... j'ai toujours etr 2 et 9
> pages à l'aperçu, par onglet
..
> Le code de Steph ... j'ai encore kek onglets qui
> persistent à 2 pages
tu as demandé selon ma compréhension de définir la même zone
d'impression pour tous les onglets de feuille de calcul à partir du
6ème.
Cela ne remets en cause le nombre de pages nécessaires pour
l'affichage des zones correspondantes de chaque onglet
--
lSteph
Re,
..attention, si tu dis que
....le code de Michel ... j'ai toujours etr 2 et 9
> pages à l'aperçu, par onglet
..
> Le code de Steph ... j'ai encore kek onglets qui
> persistent à 2 pages
tu as demandé selon ma compréhension de définir la même zone
d'impression pour tous les onglets de feuille de calcul à partir du
6ème.
Cela ne remets en cause le nombre de pages nécessaires pour
l'affichage des zones correspondantes de chaque onglet
--
lSteph
bonjour,
Je pense qu'en fait tu voudrais redimmensionner à l'impression la zone
imprimable de ta feuille sur une seule page.
Il faut regarder dans pagestup.zoom
Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
With Worksheets("Sheet1").PageSetup
.Zoom = False
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
On 13 août, 16:08, lSteph wrote:
> Re,
> ..attention, si tu dis que
> ....le code de Michel ... j'ai toujours etr 2 et 9
> > pages à l'aperçu, par onglet
> ..
> > Le code de Steph ... j'ai encore kek onglets qui
> > persistent à 2 pages
> tu as demandé selon ma compréhension de définir la même zone
> d'impression pour tous les onglets de feuille de calcul à partir du
> 6ème.
> Cela ne remets en cause le nombre de pages nécessaires pour
> l'affichage des zones correspondantes de chaque onglet
> --
> lSteph
bonjour,
Je pense qu'en fait tu voudrais redimmensionner à l'impression la zone
imprimable de ta feuille sur une seule page.
Il faut regarder dans pagestup.zoom
Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
With Worksheets("Sheet1").PageSetup
.Zoom = False
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
On 13 août, 16:08, lSteph <gmLSt...@gmail.com> wrote:
> Re,
> ..attention, si tu dis que
> ....le code de Michel ... j'ai toujours etr 2 et 9
> > pages à l'aperçu, par onglet
> ..
> > Le code de Steph ... j'ai encore kek onglets qui
> > persistent à 2 pages
> tu as demandé selon ma compréhension de définir la même zone
> d'impression pour tous les onglets de feuille de calcul à partir du
> 6ème.
> Cela ne remets en cause le nombre de pages nécessaires pour
> l'affichage des zones correspondantes de chaque onglet
> --
> lSteph
bonjour,
Je pense qu'en fait tu voudrais redimmensionner à l'impression la zone
imprimable de ta feuille sur une seule page.
Il faut regarder dans pagestup.zoom
Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
With Worksheets("Sheet1").PageSetup
.Zoom = False
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
On 13 août, 16:08, lSteph wrote:
> Re,
> ..attention, si tu dis que
> ....le code de Michel ... j'ai toujours etr 2 et 9
> > pages à l'aperçu, par onglet
> ..
> > Le code de Steph ... j'ai encore kek onglets qui
> > persistent à 2 pages
> tu as demandé selon ma compréhension de définir la même zone
> d'impression pour tous les onglets de feuille de calcul à partir du
> 6ème.
> Cela ne remets en cause le nombre de pages nécessaires pour
> l'affichage des zones correspondantes de chaque onglet
> --
> lSteph
bonjour,
je répondais à Gilles , ceci suffit:
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
with sh.PageSetup
.PrintArea = "$A$1:$A$50"
.FitToPagesWide = 1
.FitToPagesTall = 1
end with
Next
End Sub
On 13 août, 16:19, dunkelzahn wrote:
> bonjour,
> Je pense qu'en fait tu voudrais redimmensionner à l'impression la zon e
> imprimable de ta feuille sur une seule page.
> Il faut regarder dans pagestup.zoom
> Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
> With Worksheets("Sheet1").PageSetup
> .Zoom = False
> .FitToPagesTall = 1
> .FitToPagesWide = 1
> End With
> On 13 août, 16:08, lSteph wrote:
> > Re,
> > ..attention, si tu dis que
> > ....le code de Michel ... j'ai toujours etr 2 et 9
> > > pages à l'aperçu, par onglet
> > ..
> > > Le code de Steph ... j'ai encore kek onglets qui
> > > persistent à 2 pages
> > tu as demandé selon ma compréhension de définir la même zone
> > d'impression pour tous les onglets de feuille de calcul à partir du
> > 6ème.
> > Cela ne remets en cause le nombre de pages nécessaires pour
> > l'affichage des zones correspondantes de chaque onglet
> > --
> > lSteph- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
bonjour,
je répondais à Gilles , ceci suffit:
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
with sh.PageSetup
.PrintArea = "$A$1:$A$50"
.FitToPagesWide = 1
.FitToPagesTall = 1
end with
Next
End Sub
On 13 août, 16:19, dunkelzahn <dunkelzahn.dunkelz...@gmail.com> wrote:
> bonjour,
> Je pense qu'en fait tu voudrais redimmensionner à l'impression la zon e
> imprimable de ta feuille sur une seule page.
> Il faut regarder dans pagestup.zoom
> Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
> With Worksheets("Sheet1").PageSetup
> .Zoom = False
> .FitToPagesTall = 1
> .FitToPagesWide = 1
> End With
> On 13 août, 16:08, lSteph <gmLSt...@gmail.com> wrote:
> > Re,
> > ..attention, si tu dis que
> > ....le code de Michel ... j'ai toujours etr 2 et 9
> > > pages à l'aperçu, par onglet
> > ..
> > > Le code de Steph ... j'ai encore kek onglets qui
> > > persistent à 2 pages
> > tu as demandé selon ma compréhension de définir la même zone
> > d'impression pour tous les onglets de feuille de calcul à partir du
> > 6ème.
> > Cela ne remets en cause le nombre de pages nécessaires pour
> > l'affichage des zones correspondantes de chaque onglet
> > --
> > lSteph- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
bonjour,
je répondais à Gilles , ceci suffit:
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
with sh.PageSetup
.PrintArea = "$A$1:$A$50"
.FitToPagesWide = 1
.FitToPagesTall = 1
end with
Next
End Sub
On 13 août, 16:19, dunkelzahn wrote:
> bonjour,
> Je pense qu'en fait tu voudrais redimmensionner à l'impression la zon e
> imprimable de ta feuille sur une seule page.
> Il faut regarder dans pagestup.zoom
> Voici l'exemple qui peut s'appliquer à ton code (repris de l'aide) :
> With Worksheets("Sheet1").PageSetup
> .Zoom = False
> .FitToPagesTall = 1
> .FitToPagesWide = 1
> End With
> On 13 août, 16:08, lSteph wrote:
> > Re,
> > ..attention, si tu dis que
> > ....le code de Michel ... j'ai toujours etr 2 et 9
> > > pages à l'aperçu, par onglet
> > ..
> > > Le code de Steph ... j'ai encore kek onglets qui
> > > persistent à 2 pages
> > tu as demandé selon ma compréhension de définir la même zone
> > d'impression pour tous les onglets de feuille de calcul à partir du
> > 6ème.
> > Cela ne remets en cause le nombre de pages nécessaires pour
> > l'affichage des zones correspondantes de chaque onglet
> > --
> > lSteph- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -