OVH Cloud OVH Cloud

Ordre d'impression

3 réponses
Avatar
Xav
Bonjour

j'ai un petit problème.

J'ai un classeur avec plusieurs feuilles que j'ai ajoutées au fur et à
mesure (autrement dit, les feuilles que je veux imprimer ne se suivent pas
dans leur nom Feuil1, Feuil2, Feuil3,etc)

je fais une macro pour imprimer une sélection de feuilles

Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse par
métier", "Synthèse Totale", "synthèse métier par région")).PrintOut
Copies:=1, Collate:=True

Les feuilles dans mon classeur sont dans l'ordre ci dessus.

Le problème est que les pages imprimées sont numérotées correctement mais ne
s'impriment pas dans le bon ordre: 1,5,2,3,4

En revanche, quand je fais
Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse par
métier", "Synthèse Totale", "synthèse métier par région")).PrintPreview

et que j'imprime à partir de l'aperçu, tout se passe bien....

Si quelqu'un à une petite idée...

Merci d'avance


--
Cordialement

@+
Xav

3 réponses

Avatar
PMO
Bonjour,

Essayez avec le code suivant

'********************
Sub PrintArray()
Dim var
Dim i&
var = Array("Comparaison des indicateurs", _
"Canaux France", _
"Synthèse parmétier", _
"Synthèse Totale", _
"synthèse métier par région")
For i& = LBound(var) To UBound(var)
Sheets(var(i&)).PrintOut
Next i&
End Sub
'********************

Est-ce mieux ?

Cordialement.

PMO
Patrick Morange



Bonjour

j'ai un petit problème.

J'ai un classeur avec plusieurs feuilles que j'ai ajoutées au fur et à
mesure (autrement dit, les feuilles que je veux imprimer ne se suivent pas
dans leur nom Feuil1, Feuil2, Feuil3,etc)

je fais une macro pour imprimer une sélection de feuilles

Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse par
métier", "Synthèse Totale", "synthèse métier par région")).PrintOut
Copies:=1, Collate:=True

Les feuilles dans mon classeur sont dans l'ordre ci dessus.

Le problème est que les pages imprimées sont numérotées correctement mais ne
s'impriment pas dans le bon ordre: 1,5,2,3,4

En revanche, quand je fais
Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse par
métier", "Synthèse Totale", "synthèse métier par région")).PrintPreview

et que j'imprime à partir de l'aperçu, tout se passe bien....

Si quelqu'un à une petite idée...

Merci d'avance


--
Cordialement

@+
Xav





Avatar
Xav
Merci

Cela va un peu mieux: les pages s'impriment dans l'ordre mais comme on lance
plusieurs impressions, chaque impression de feuille recommence à 1

Merci quand meme
--
Cordialement

@+
Xav
"PMO" a écrit dans le message de
news:
Bonjour,

Essayez avec le code suivant

'********************
Sub PrintArray()
Dim var
Dim i&
var = Array("Comparaison des indicateurs", _
"Canaux France", _
"Synthèse parmétier", _
"Synthèse Totale", _
"synthèse métier par région")
For i& = LBound(var) To UBound(var)
Sheets(var(i&)).PrintOut
Next i&
End Sub
'********************

Est-ce mieux ?

Cordialement.

PMO
Patrick Morange



Bonjour

j'ai un petit problème.

J'ai un classeur avec plusieurs feuilles que j'ai ajoutées au fur et à
mesure (autrement dit, les feuilles que je veux imprimer ne se suivent
pas


dans leur nom Feuil1, Feuil2, Feuil3,etc)

je fais une macro pour imprimer une sélection de feuilles

Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse
par


métier", "Synthèse Totale", "synthèse métier par région")).PrintOut
Copies:=1, Collate:=True

Les feuilles dans mon classeur sont dans l'ordre ci dessus.

Le problème est que les pages imprimées sont numérotées correctement
mais ne


s'impriment pas dans le bon ordre: 1,5,2,3,4

En revanche, quand je fais
Sheets(Array("Comparaison des indicateurs", "Canaux France", "Synthèse
par


métier", "Synthèse Totale", "synthèse métier par région")).PrintPreview

et que j'imprime à partir de l'aperçu, tout se passe bien....

Si quelqu'un à une petite idée...

Merci d'avance


--
Cordialement

@+
Xav







Avatar
PMO
Bonjour,

Alors essayez plutôt ce code.
J'ai mis une limite pour le nombre de copies
des fois que soit lancée accidentellement une
impression d'un trop grand nombre de copies.
Vous pouvez l'adapter à votre usage.

'*******************
Sub PrintArray2()
Dim var
Dim i&
Dim j&
Dim nbCopie&
nbCopie& = Application.InputBox( _
prompt:="Nombre de copies à imprimer", _
Default:=1, Type:=1)
If nbCopie& < 1 Then Exit Sub
'---- Limite à adapter ----
If nbCopie& > 10 Then
MsgBox "Nombre limité à 10"
Exit Sub
End If
'--------------------------
var = Array("Comparaison des indicateurs", _
"Canaux France", _
"Synthèse par métier", _
"Synthèse Totale", _
"synthèse métier par région")
For j& = 1 To nbCopie&
For i& = LBound(var) To UBound(var)
Sheets(var(i&)).PrintOut
Next i&
Next j&
End Sub
'******************

Cordialement.

PMO
Patrick Morange



Merci

Cela va un peu mieux: les pages s'impriment dans l'ordre mais comme on lance
plusieurs impressions, chaque impression de feuille recommence à 1

Merci quand meme
--
Cordialement

@+
Xav