Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ExportAsFixedFormat

16 réponses
Avatar
MichD
Bonjour,

On m'a transmis un fichier et la méthode "ExportAsFixedFormat"
semble être limitée à 1 seule page de la feuille de calcul. Peut-elle
imprimer plus de pages si la feuille en contient davantage?

Si oui, comment procédez-vous?

P.S. Je sais, on peut utiliser la commande "imprimer" du menu fichier...
mais ce n'est pas là la question.

L'aide sur MSDN n'est pas explicite sur le sujet.


ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Nom, _
Quality:=xlQualityStandard, IncludeDocProperties:=False, _
IgnorePrintAreas:=False, from:=1,
To:=ActiveWindow.SelectedSheets.Count, OpenAfterPublish:=True


Merci.


MichD

10 réponses

1 2
Avatar
MichD
OK, le code devrait plutôt être comme ceci:
Le paramètre : To:=3 , ou le nombre de pages désirés
Ce paramètre est facultatif, en l'omettant, il imprime jusqu'à la
dernière page.
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:UsersmichdDocumentstoto" & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True,
IgnorePrintAreas:úlse, _
From:=1,to:=3, OpenAfterPublish:=True
Merci.
Avatar
isabelle
bonjour Denis,
ça serait plutot,
ActiveSheet.PageSetup.Pages.Count
au lieu de
ActiveWindow.SelectedSheets.Count,
isabelle
Le 2016-06-29 à 11:36, MichD a écrit :
Bonjour,
On m'a transmis un fichier et la méthode "ExportAsFixedFormat"
semble être limitée à 1 seule page de la feuille de calcul. Peut-elle
imprimer plus de pages si la feuille en contient davantage?
Si oui, comment procédez-vous?
P.S. Je sais, on peut utiliser la commande "imprimer" du menu fichier...
mais ce n'est pas là la question.
L'aide sur MSDN n'est pas explicite sur le sujet.
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Nom, _
Quality:=xlQualityStandard, IncludeDocProperties:úlse, _
IgnorePrintAreas:úlse, from:=1, To:¬tiveWindow.SelectedSheets.Count,
OpenAfterPublish:=True
Merci.
MichD
Avatar
LSteph
Bonjour,
Ceci à l'air de le faire:
Sheets.Select 'une fois n'est pas coutume
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"G:Classeur4.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
'LSteph
Le mercredi 29 juin 2016 17:36:23 UTC+2, MichD a écrit :
Bonjour,
On m'a transmis un fichier et la méthode "ExportAsFixedFormat"
semble être limitée à 1 seule page de la feuille de calcul . Peut-elle
imprimer plus de pages si la feuille en contient davantage?
Si oui, comment procédez-vous?
P.S. Je sais, on peut utiliser la commande "imprimer" du menu fichier...
mais ce n'est pas là la question.
L'aide sur MSDN n'est pas explicite sur le sujet.
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Nom, _
Quality:=xlQualityStandard, IncludeDocProperties:úlse, _
IgnorePrintAreas:úlse, from:=1,
To:¬tiveWindow.SelectedSheets.Count, OpenAfterPublish:=True
Merci.
MichD
Avatar
MichD
Bonjour à vous deux,
Je répète la petite explication émise plutôt :
OK, le code devrait plutôt être comme ceci:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:UsersmichdDocumentstoto" & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, _
From:=1,to:=3, OpenAfterPublish:=True
Le paramètre suivant To:=3 à la ligne précédente, permet de limiter le
nombre de pages à imprimer dans le fichier PDF au nombre inscrit, ou si
on omet ce paramètre (il est facultatif) la ligne de code imprime tout
le document dans le fichier PDF jusqu'à la toute dernière page.
Merci pour vos commentaires!
MichD
Avatar
DanielCo
Bonjour,
IgnorePrintAreas:=True ?
Cordialement.
Daniel
Bonjour à vous deux,
Je répète la petite explication émise plutôt :
OK, le code devrait plutôt être comme ceci:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:UsersmichdDocumentstoto" & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, _
From:=1,to:=3, OpenAfterPublish:=True
Le paramètre suivant To:=3 à la ligne précédente, permet de limiter
le nombre de pages à imprimer dans le fichier PDF au nombre inscrit,
ou si on omet ce paramètre (il est facultatif) la ligne de code
imprime tout le document dans le fichier PDF jusqu'à la toute
dernière page.
Merci pour vos commentaires!
MichD
Avatar
MichD
Le 30/06/16 à 03:29, DanielCo a écrit :
Bonjour,
IgnorePrintAreas:=True ?
Cordialement.
Daniel

Bonjour,
OUI, car seule une partie de la feuille doit être imprimée.
Cette section est définie par la propriété "PrintArea"de "PageSetup"
dans la procédure.
MichD
Avatar
DanielCo
Le 30/06/16 à 03:29, DanielCo a écrit :
Bonjour,
IgnorePrintAreas:=True ?
Cordialement.
Daniel

Bonjour,
OUI, car seule une partie de la feuille doit être imprimée.
Cette section est définie par la propriété "PrintArea"de "PageSetup"
dans la procédure.
MichD

J'enregistre bien le nombre de feuilles sélectionnées
(ActiveWindow.SelectedSheets.Count).
Daniel
Avatar
MichD
J'enregistre bien le nombre de feuilles sélectionnées
(ActiveWindow.SelectedSheets.Count).
Daniel

C'est justement où le bât blesse. En supposant que l'usager a 2 feuilles
de calcul dans son classeur et que chaque feuille contient plusieurs
pages, lorsque ce dernier utilise la propriété "To" comme ceci
to:¬tiveWindow.SelectedSheets.Count de la méthode
"ExportAsFixedFormat",le nombre de pages imprimé dans le fichier "PDF"
est de 2 et non le nombre total de pages que devrait contenir le fichier
"PDF". En ne définissant pas ce paramètre, toutes les pages des 2
feuilles sont incluses dans le fichier "PDF", ce que voulait l'usager!
MichD
Avatar
isabelle
bonjour Denis,
si PDFCreator est installé ou autre, une solution serait d'imprimer les onglets
Sub Impression_PDFCreator()
Dim I As Integer
Dim MonImprimante As String
Dim Nom As String
MonImprimante = ActivePrinter 'récupérer imprimante active
On Error Resume Next
For I = 0 To 9
Nom = "PDFCreator sur ne0" & I & ":"
Application.ActivePrinter = Nom
If UCase(ActivePrinter) = UCase(Nom) Then Exit For
Next I
On Error GoTo 0
If UCase(ActivePrinter) = UCase(MonImprimante) Then
MsgBox "Imprimante non trouvée" & vbCr & Nom, Title:="Impression annulée"
Else
Sheets.PrintOut
ActivePrinter = MonImprimante 'remettre imprimante active
End If
End Sub
isabelle
Le 2016-07-03 à 14:56, MichD a écrit :
J'enregistre bien le nombre de feuilles sélectionnées
(ActiveWindow.SelectedSheets.Count).
Daniel

C'est justement où le bât blesse. En supposant que l'usager a 2 feuilles de
calcul dans son classeur et que chaque feuille contient plusieurs pages, lorsque
ce dernier utilise la propriété "To" comme ceci
to:¬tiveWindow.SelectedSheets.Count de la méthode "ExportAsFixedFormat",le
nombre de pages imprimé dans le fichier "PDF" est de 2 et non le nombre total de
pages que devrait contenir le fichier "PDF". En ne définissant pas ce paramètre,
toutes les pages des 2 feuilles sont incluses dans le fichier "PDF", ce que
voulait l'usager!
MichD
Avatar
LSteph
Bonjour,
L'un de vous a-t-il testé le code que j'avais proposé.
Il me semble que cela mets toutes les pages dans le pdf quoiqu'il arrive...
Cordialement.
--
LSteph
Le lundi 4 juillet 2016 03:25:52 UTC+2, isabelle a écrit :
bonjour Denis,
si PDFCreator est installé ou autre, une solution serait d'imprimer les onglets
Sub Impression_PDFCreator()
Dim I As Integer
Dim MonImprimante As String
Dim Nom As String
MonImprimante = ActivePrinter 'récupérer imprimante acti ve
On Error Resume Next
For I = 0 To 9
Nom = "PDFCreator sur ne0" & I & ":"
Application.ActivePrinter = Nom
If UCase(ActivePrinter) = UCase(Nom) Then Exit For
Next I
On Error GoTo 0
If UCase(ActivePrinter) = UCase(MonImprimante) Then
MsgBox "Imprimante non trouvée" & vbCr & Nom, Title:="Impress ion annulée"
Else
Sheets.PrintOut
ActivePrinter = MonImprimante 'remettre imprimante active
End If
End Sub
isabelle
Le 2016-07-03 à 14:56, MichD a écrit :
J'enregistre bien le nombre de feuilles sélectionnées
(ActiveWindow.SelectedSheets.Count).
Daniel

C'est justement où le bât blesse. En supposant que l'usager a 2 feuilles de
calcul dans son classeur et que chaque feuille contient plusieurs pages , lorsque
ce dernier utilise la propriété "To" comme ceci
to:¬tiveWindow.SelectedSheets.Count de la méthode "ExportAsFix edFormat",le
nombre de pages imprimé dans le fichier "PDF" est de 2 et non le n ombre total de
pages que devrait contenir le fichier "PDF". En ne définissant pas ce paramètre,
toutes les pages des 2 feuilles sont incluses dans le fichier "PDF", ce que
voulait l'usager!
MichD
1 2