bonjour,
Au moment où je saisissais mon texte, ce message n'était pas encore
apparent. Mais le .zoom n'est il pas nécessaire à paramétrer ?
On 13 août, 16:22, lSteph wrote:
> 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 z one
> > 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 zon e
> > > 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,
Au moment où je saisissais mon texte, ce message n'était pas encore
apparent. Mais le .zoom n'est il pas nécessaire à paramétrer ?
On 13 août, 16:22, lSteph <gmLSt...@gmail.com> wrote:
> 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 z one
> > 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 zon e
> > > 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,
Au moment où je saisissais mon texte, ce message n'était pas encore
apparent. Mais le .zoom n'est il pas nécessaire à paramétrer ?
On 13 août, 16:22, lSteph wrote:
> 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 z one
> > 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 zon e
> > > 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,
que tu passes par un For.. to ..next ou For each.. in ..VBA fera
toujours feuille par feuille
ne pas être en groupe de travail pour effectuer la manoeuvre.
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
sh.PageSetup.PrintArea = "$A$1:$A$50"
Next
End Sub
'lSteph
On 13 août, 13:40, gilles wrote:
> 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...
Bonjour,
que tu passes par un For.. to ..next ou For each.. in ..VBA fera
toujours feuille par feuille
ne pas être en groupe de travail pour effectuer la manoeuvre.
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
sh.PageSetup.PrintArea = "$A$1:$A$50"
Next
End Sub
'lSteph
On 13 août, 13:40, gilles <gil...@discussions.microsoft.com> wrote:
> 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...
Bonjour,
que tu passes par un For.. to ..next ou For each.. in ..VBA fera
toujours feuille par feuille
ne pas être en groupe de travail pour effectuer la manoeuvre.
Sub mpg()
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If sh.Index > 5 Then _
sh.PageSetup.PrintArea = "$A$1:$A$50"
Next
End Sub
'lSteph
On 13 août, 13:40, gilles wrote:
> 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 à tous,
houla ...vous travaillez beaaucoup plus vite que moi!!
Pour Michel...effectivement, j'ai pas remplacé preview...
Pour lSteph
petite précision, effectivement...
ce que je souhaite faire c'est lancer l'impression de tous les onglets qu e
j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
un "X" devant le nom des onglets que je souhaite imprimer
Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
feuilles de papier
Je souhaites donce limiter la zone d'impression à la page 1, et ce, pou r
chacun des onglets
peut-être serait-il plus simple de préciser q'il n'imprime QUE la pag e 1
Mes excuses pour ce manque de clarté dans l'énoncé de ma question
MERCI encore
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"lSteph" a écrit :
> Bonjour,
> que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> toujours feuille par feuille
> ne pas être en groupe de travail pour effectuer la manoeuvre.
> Sub mpg()
> Dim sh As Worksheet
> For Each sh In ActiveWorkbook.Worksheets
> If sh.Index > 5 Then _
> sh.PageSetup.PrintArea = "$A$1:$A$50"
> Next
> End Sub
> 'lSteph
> On 13 août, 13:40, gilles wrote:
> > bonjour,
> > sur un fichier avec 50 onglets, en xp et en xl2003,
> > tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, l a 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 ongl et ??
> > 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 aujou rd'hui,
> > mais à chaque jour suffit sa peine...
Re-bonjour à tous,
houla ...vous travaillez beaaucoup plus vite que moi!!
Pour Michel...effectivement, j'ai pas remplacé preview...
Pour lSteph
petite précision, effectivement...
ce que je souhaite faire c'est lancer l'impression de tous les onglets qu e
j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
un "X" devant le nom des onglets que je souhaite imprimer
Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
feuilles de papier
Je souhaites donce limiter la zone d'impression à la page 1, et ce, pou r
chacun des onglets
peut-être serait-il plus simple de préciser q'il n'imprime QUE la pag e 1
Mes excuses pour ce manque de clarté dans l'énoncé de ma question
MERCI encore
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"lSteph" a écrit :
> Bonjour,
> que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> toujours feuille par feuille
> ne pas être en groupe de travail pour effectuer la manoeuvre.
> Sub mpg()
> Dim sh As Worksheet
> For Each sh In ActiveWorkbook.Worksheets
> If sh.Index > 5 Then _
> sh.PageSetup.PrintArea = "$A$1:$A$50"
> Next
> End Sub
> 'lSteph
> On 13 août, 13:40, gilles <gil...@discussions.microsoft.com> wrote:
> > bonjour,
> > sur un fichier avec 50 onglets, en xp et en xl2003,
> > tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, l a 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 ongl et ??
> > 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 aujou rd'hui,
> > mais à chaque jour suffit sa peine...
Re-bonjour à tous,
houla ...vous travaillez beaaucoup plus vite que moi!!
Pour Michel...effectivement, j'ai pas remplacé preview...
Pour lSteph
petite précision, effectivement...
ce que je souhaite faire c'est lancer l'impression de tous les onglets qu e
j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
un "X" devant le nom des onglets que je souhaite imprimer
Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
feuilles de papier
Je souhaites donce limiter la zone d'impression à la page 1, et ce, pou r
chacun des onglets
peut-être serait-il plus simple de préciser q'il n'imprime QUE la pag e 1
Mes excuses pour ce manque de clarté dans l'énoncé de ma question
MERCI encore
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...
"lSteph" a écrit :
> Bonjour,
> que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> toujours feuille par feuille
> ne pas être en groupe de travail pour effectuer la manoeuvre.
> Sub mpg()
> Dim sh As Worksheet
> For Each sh In ActiveWorkbook.Worksheets
> If sh.Index > 5 Then _
> sh.PageSetup.PrintArea = "$A$1:$A$50"
> Next
> End Sub
> 'lSteph
> On 13 août, 13:40, gilles wrote:
> > bonjour,
> > sur un fichier avec 50 onglets, en xp et en xl2003,
> > tous mes onglets ont 1 seule page à imprimer mais à l'aperçu, l a 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 ongl et ??
> > 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 aujou rd'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 et 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 qui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 et 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 qui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
Re-bonjour
et merci de votre aide
j'ai utilisé le code de Michel qui ne donne rien: j'ai toujours etr 2 et 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 qui
persistent à 2 pages
je peaufine ça
mais de toutes façons, merci
Gilles
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles wrote:
> > > 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...
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles <gil...@discussions.microsoft.com> wrote:
> > > 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...
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles wrote:
> > > 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...
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles wrote:
> > > 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...
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles <gil...@discussions.microsoft.com> wrote:
> > > 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...
... je remets donc pour la mise en page(supposant que tu as déjà ta
macro pour l'impression)
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
'lSteph
> Re-bonjour à tous,
> houla ...vous travaillez beaaucoup plus vite que moi!!
> Pour Michel...effectivement, j'ai pas remplacé preview...
>
> Pour lSteph
> petite précision, effectivement...
> ce que je souhaite faire c'est lancer l'impression de tous les onglets que
> j'ai selectionnés via une liste de tous les onglets du classeur, ou je place
> un "X" devant le nom des onglets que je souhaite imprimer
> Mon pb, c'est que si je lance 10 onglets, je me retrouve avec 15 ou 20
> feuilles de papier
> Je souhaites donce limiter la zone d'impression à la page 1, et ce, pour
> chacun des onglets
> peut-être serait-il plus simple de préciser q'il n'imprime QUE la page 1
>
> Mes excuses pour ce manque de clarté dans l'énoncé de ma question
>
> MERCI encore
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "lSteph" a écrit :
>
> > Bonjour,
> > que tu passes par un For.. to ..next ou For each.. in ..VBA fera
> > toujours feuille par feuille
> > ne pas être en groupe de travail pour effectuer la manoeuvre.
>
> > Sub mpg()
> > Dim sh As Worksheet
>
> > For Each sh In ActiveWorkbook.Worksheets
> > If sh.Index > 5 Then _
> > sh.PageSetup.PrintArea = "$A$1:$A$50"
> > Next
>
> > End Sub
>
> > 'lSteph
>
> > On 13 août, 13:40, gilles wrote:
> > > 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...
BONSOIR lsteph
effectivement mon code pour imprimer fonctionne...
j'ai testé tes 2 derniers codes
y a un truc que je pige pas :
quand je lance la macro j'ai un message qui me dit :
erreur de compilation
end if sans if (alors qu'il n' y a pas end if)
si je rajoute end if: même chose
si j'enlève le trait après Then:
j'ai un message:
erreur de compilation next sans for (alors qu'il ya for et next)
D'ou ça peut venir?
merci
BONSOIR lsteph
effectivement mon code pour imprimer fonctionne...
j'ai testé tes 2 derniers codes
y a un truc que je pige pas :
quand je lance la macro j'ai un message qui me dit :
erreur de compilation
end if sans if (alors qu'il n' y a pas end if)
si je rajoute end if: même chose
si j'enlève le trait après Then:
j'ai un message:
erreur de compilation next sans for (alors qu'il ya for et next)
D'ou ça peut venir?
merci
BONSOIR lsteph
effectivement mon code pour imprimer fonctionne...
j'ai testé tes 2 derniers codes
y a un truc que je pige pas :
quand je lance la macro j'ai un message qui me dit :
erreur de compilation
end if sans if (alors qu'il n' y a pas end if)
si je rajoute end if: même chose
si j'enlève le trait après Then:
j'ai un message:
erreur de compilation next sans for (alors qu'il ya for et next)
D'ou ça peut venir?
merci
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
...suite
et en final ça marche maisles onglets comportent toujours une zone
d'impression de 2 pages ou plus
à+
Gilles
exact!comme quoi tu lis bien ;-)
reprends ainsi le tout
'''''
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
end if
Next
end sub
'''''
'lsteph
'dis moi si c'est ok!
gilles a écrit :
> BONSOIR lsteph
> effectivement mon code pour imprimer fonctionne...
> j'ai testé tes 2 derniers codes
> y a un truc que je pige pas :
> quand je lance la macro j'ai un message qui me dit :
>
> erreur de compilation
> end if sans if (alors qu'il n' y a pas end if)
>
> si je rajoute end if: même chose
> si j'enlève le trait après Then:
> j'ai un message:
> erreur de compilation next sans for (alors qu'il ya for et next)
> D'ou ça peut venir?
> merci
>
exact!comme quoi tu lis bien ;-)
reprends ainsi le tout
'''''
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
end if
Next
end sub
'''''
'lsteph
'dis moi si c'est ok!
gilles a écrit :
> BONSOIR lsteph
> effectivement mon code pour imprimer fonctionne...
> j'ai testé tes 2 derniers codes
> y a un truc que je pige pas :
> quand je lance la macro j'ai un message qui me dit :
>
> erreur de compilation
> end if sans if (alors qu'il n' y a pas end if)
>
> si je rajoute end if: même chose
> si j'enlève le trait après Then:
> j'ai un message:
> erreur de compilation next sans for (alors qu'il ya for et next)
> D'ou ça peut venir?
> merci
>
exact!comme quoi tu lis bien ;-)
reprends ainsi le tout
'''''
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
end if
Next
end sub
'''''
'lsteph
'dis moi si c'est ok!
gilles a écrit :
> BONSOIR lsteph
> effectivement mon code pour imprimer fonctionne...
> j'ai testé tes 2 derniers codes
> y a un truc que je pige pas :
> quand je lance la macro j'ai un message qui me dit :
>
> erreur de compilation
> end if sans if (alors qu'il n' y a pas end if)
>
> si je rajoute end if: même chose
> si j'enlève le trait après Then:
> j'ai un message:
> erreur de compilation next sans for (alors qu'il ya for et next)
> D'ou ça peut venir?
> merci
>