Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Contribuez
Contribuez Placez ici vos codes, sources, trucs et astuces que vous souhaitez partager avec les membres du club.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/05/2008, 13h51   #1
Membre émérite
 
Avatar de fred65200
 
Inscription : septembre 2007
Messages : 901
Détails du profil
Informations personnelles :
Âge : 45

Informations forums :
Inscription : septembre 2007
Messages : 901
Points : 994
Points : 994
Par défaut Mise en page avec les macros XL4 -

Bonjour à tous, je viens de retrouver le fichier d'aide pour les macro Excel4.
Je me permets de joindre une copie du fichier pour la mise en page qui est beaucoup plus rapide qu'avec l'éditeur VB.

Citation:
Equivaut à choisir, dans le menu Fichier, la commande Mise en page. Utilisez MISE.EN.PAGE pour contrôler l'aspect de vos feuilles imprimées.
MISE.EN.PAGE possède trois formes de syntaxe. La syntaxe 1 est utilisée lorsqu'une feuille ou une feuille macro est active ; la syntaxe 2 est utilisée lorsqu'un graphique est actif ; et la syntaxe 3 s'applique aux modules Visual Basic et à la fenêtre Info.
Les arguments correspondent aux cases à cocher et aux zones de texte dans la boîte de dialogue Mise en page. Les arguments qui correspondent aux cases à cocher sont des valeurs logiques. Si un argument est VRAI, Microsoft Excel coche la case et s'il est FAUX, Microsoft Excel supprime la coche de la case. Les arguments relatifs aux marges sont toujours exprimés en pouces, quel que soit le paramètre en vigueur dans votre pays.

Syntaxe 1

Feuilles de calcul et feuilles macro

MISE.EN.PAGE(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; no_lig_col; quadrillage; centr_hor; centr_vert; orient; papier; échelle; no_pg; ordre_impr; cellules_nb; qualité; marge_en_tête; marge_pied_pg; annot; brouillon)
MISE.EN.PAGE?(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; no_lig_col; quadrillage; centr_hor; centr_vert; orient; papier; échelle; no_pg; ordre_impr; cellules_nb; qualité; marge_en_tête; marge_pied_pg; annot; brouillon)

Syntaxe 2

Graphiques

MISE.EN.PAGE(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; dimension; centrer_horiz; centrer_vert; orient; papier; échelle; no_pg; graphique_nb; qualité; marge_en_tête; marge_pied_pg; brouillon)
MISE.EN.PAGE?(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; dimension; centrer_horiz; centrer_vert; orient; papier; échelle; no_pg; graphique_nb; qualité; marge_en_tête; marge_pied_pg; brouillon)

Syntaxe 3

Modules Visual Basic et la fenêtre Info
MISE.EN.PAGE(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; orient; papier; échelle; qualité; marge_en_tête; marge_pied_pg; no_pg)
MISE.EN.PAGE?(en_tête; pied_pg; marge_gch; marge_dr; marge_haut; marge_bas; orient; papier; échelle; qualité; marge_en_tête; marge_pied_pg; no_pg)

En_tête spécifie le texte et les codes de mise en page pour l'en-tête de la feuille active. Pour plus d'informations sur les codes de mise en forme, reportez-vous à "Remarques" ci-dessous.
Pied_pg spécifie le texte et les codes de mise en forme pour le pied de page du classeur.
Marge_gch correspond à la zone "Gauche", s'il s'agit d'un nombre qui spécifie la marge de gauche.
Marge_dr correspond à la zone "Droite", s'il s'agit d'un nombre qui spécifie la marge de droite.

Marge_haut correspond à la zone "Haut", s'il s'agit d'un nombre qui spécifie la marge du haut.
Marge_bas correspond à la zone "Bas", s'il s'agit d'un nombre qui spécifie la marge du bas.
No_lig_col correspond à la case à cocher "En-tête de ligne et de colonne". No_lig_col n'est disponible que dans la forme feuille et feuille macro de cette fonction.
Quadrillage correspond à la case à cocher "Quadrillage". Quadrillage n'est disponible que dans la forme feuille et feuille macro de cette fonction.

Centr_hor correspond à la case à cocher "Horizontalement" dans l'onglet Marges dans la boîte de dialogue Mise en page.
Centr_vert correspond à la case à cocher "Verticalement" dans l'onglet Marges dans la boîte de dialogue Mise en page.
Orient détermine l'orientation d'impression du classeur.

Orient Format d'impression

1 Portrait
2 Paysage

Papier est un nombre de 1 à 26 qui spécifie la dimension du papier.

Papier Type de papier

1 Lettre US

2 Petite lettre
3 Tabloïde US
4 Ledger US
5 Légal US
6 Statement US
7 Exécutive US
8 A3
9 A4
10 A4 (petit format)
11 A5
12 B4
13 B5
14 Folio US
15 Quarto US
16 10x14
17 11x17
18 Note US
19 ENV9
20 ENV10
21 ENV11
22 ENV12
23 ENV14
24 Feuille C
25 Feuille D
26 Feuille E

Echelle est un nombre qui représente le pourcentage d'agrandissement ou de réduction de la dimension de la feuille. Toute mise à l'échelle garde le facteur d'échelle de l'original.

Pour spécifier un pourcentage d'agrandissement ou de réduction, définissez échelle au pourcentage adéquat.
Pour des feuilles de calcul et des feuilles macros, vous pouvez spécifier le nombre de pages dans lequel doit tenir la sortie imprimée mise à l'échelle. Définissez échelle dans une matrice horizontale à deux éléments, avec le premier élément correspondant à la largeur et le second, à la hauteur. Si aucune contrainte n'est nécessaire pour une direction donnée, vous pouvez définir la valeur correspondante à #N/A.

Echelle peut aussi être une valeur logique. Pour faire tenir la zone d'impression sur une seule page, définissez VRAI comme valeur de échelle.

No_pg spécifie le numéro de la première page. Si zéro, la numérotation commence à 0. Si "Auto", la numérotation est effectuée automatiquement. S'il est omis, MISE.EN.PAGE garde le no_pg existant.
Ordre_impr spécifie si la pagination doit être de gauche à droite, puis vers le bas, ou de haut en bas, puis vers la droite.

Ordre_impr Pagination


1 Haut en bas, puis droite
2 Gauche à droite, puis bas

Cellules_nb est une valeur logique qui spécifie s'il faut imprimer les cellules et tous les objets graphique, tels que les zones de texte et les boutons, en couleur.

Si cellules_nb est VRAI, Microsoft Excel imprime le texte des cellules et les bordures en noir et le fond en blanc.
Si cellules_nb est FAUX , Microsoft Excel imprime le texte des cellules, les bordures et le fond en couleur (ou en niveaux de gris)

Graphique_nb est une valeur logique qui spécifie s'il faut imprimer les graphiques en couleur.
Dimension est un nombre qui correspond aux options de la zone "Taille graphique". Il détermine comment vous voulez imprimer le graphique sur la page à l'intérieur des marges. Dimension n'est disponible que dans la forme graphique de cette fonction.

Dimension Dimension d'impression du graphique

1 Tel qu'à l'écran
2 Ajusté à la page
3 Pleine page

Qualité spécifie la qualité d'impression en points par pouce. Pour spécifier la qualité d'impression horizontale et verticale, utilisez une matrice à deux valeurs.
Marge_en_tête est la position, en pouces, de la marge d'en-tête à partir du bord de la page.
Marge_pied_pg est la position, en pouces, de la marge du pied de page à partir du bord de la page.
Brouillon correspond à la case à cocher "Qualité brouillon" dans les onglets Feuille et Graphique dans la boîte de dialogue Mise en page. Si FAUX ou omis, les graphiques sont imprimés avec la feuille. Si VRAI, les graphiques ne sont pas imprimés.

Annot spécifie s'il faut imprimer les annotations de cellule avec la feuille. Si VRAI, la feuille et les annotations de cellule sont imprimées. Si FAUX ou omis, seule la feuille est imprimée.

Remarques

Microsoft Excel ne requiert plus de votre part la saisie de codes de mise en forme pour mettre en forme les en-têtes et les pieds de page, mais ces codes sont toujours pris en charge et enregistrés par l'Enregistreur de macro. Vous pouvez les inclure dans les chaînes en-tête et pied de page pour aligner des portions de l'en-tête ou du pied de page à gauche, à droite ou au centre, pour inclure le numéro de page, la date, l'heure ou le nom du classeur, ainsi que pour imprimer l'en-tête ou le pied de page en gras ou en italique.

Code de mise en forme Résultat

&E Aligne à gauche les caractères qui suivent.
&C Centre les caractères qui suivent.
&D Aligne à droite les caractères qui suivent.
&G Active ou désactive l'impression en gras (désormais obsolète).
&I Active ou désactive l'impression en italique.
&S Active ou désactive l'impression en souligné.
&B Active ou désactive l'impression en barré.
&R Active ou désactive l'impression en relief (Macintosh uniquement).
&O Active ou désactive l'impression des caractères ombrés (Macintosh uniquement).

&J Imprime la date en cours.
&H Imprime l'heure en cours.
&A Imprime le nom de l'onglet de feuille.
&N Imprime le nom du classeur.
&P Imprime le numéro de page.
&P+nombre Imprime le numéro de page plus nombre.
&P-nombre Imprime le numéro de page moins nombre.
&& Imprime un seul signe &.
& "nompolice, corps" Imprime les caractères qui suivent dans la police et le corps spécifiés. N'oubliez pas d'inclure une virgule immédiatement après le nom de la police et d'insérer entre guillemets le nom de la police et le corps.

&nn Imprime les caractères qui suivent dans la taille de police spécifiée. Utilisez un nombre à deux chiffres pour spécifier une taille en points.
&T Imprime le nombre total de pages du document.
&L Imprime un double soulignement.
&Y Imprime le caractère en indice.
&X Imprime le caractère en exposant.
la macro se lance comme suit
Code :
1
2
 
Application.ExecuteExcel4Macro "PAGE.SETUP("Arg1,Arg2,,,,,,,,,,,,,,,,,,Arg20,Arg21)"

L'impression peut aussi se lancer de la même façon.

Citation:
Equivaut à choisir, dans le menu Fichier, la commande Imprimer. Imprime le classeur actif.
Les arguments correspondent aux options, cases à cocher et zones de modification de la boîte de dialogue Imprimer. Les arguments qui correspondent aux cases à cocher sont des valeurs logiques. Si un argument est VRAI, Microsoft Excel coche la case ; s'il est FAUX, Microsoft Excel supprime la coche.

Syntaxe

IMPRIMER(no_pages; de; à; copies; brouillon; aperçu; sections; couleur; alimentation; qualité; y_résolution; sélection)
IMPRIMER?(no_pages; de; à; copies; brouillon; aperçu; sections; couleur; alimentation; qualité; y_résolution; sélection)

No_pages est un nombre qui spécifie quelles pages imprimer.

No_pages Imprime

1 Toutes les pages
2 Une plage spécifiée. Si no_pages est égal à 2, alors de et à sont obligatoires.

De spécifie la première page à imprimer. Cet argument est ignoré, à moins que no_pages ne soit égal à 2.
A spécifie la dernière page à imprimer. Cet argument est ignoré, à moins que no_pages ne soit égal à 2.
Copies spécifie le nombre de copies à imprimer. S'il est omis, la valeur par défaut est 1.
Brouillon Cet argument remplace l'argument brouillon de la fonction MISE.EN.PAGE. Si cet argument est omis, le paramètre brouillon de la fonction MISE.EN.PAGE est utilisé.

Aperçu est une valeur logique qui correspond au bouton "Aperçu" dans la boîte de dialogue Imprimer. Si VRAI, la fenêtre de l'aperçu avant l'impression est affichée. Si FAUX, cette fenêtre n'est pas affichée.
Sections est un nombre de 1 à 3 qui spécifie les parties de la feuille ou de la feuille macro qui doivent être imprimées. Si un graphique est actif, sections n'est pas pris en compte. Cet argument remplace le paramètre dans la boîte de dialogue Mise en page. S'il est omis, l'argument annotations de la fonction MISE.EN.PAGE est utilisé pour déterminer si les annotations doivent être imprimés ou non.

Sections Imprime


1 La feuille uniquement
2 Les annotations uniquement
3 La feuille, puis les annotations

Couleur correspond à la case à cocher "Imprimer en couleur". Couleur n'est disponible que dans Microsoft Excel pour le Macintosh. S'il est omis, le paramètre demeure inchangé.
Alimentation est un nombre qui spécifie le type de l'alimentation en papier. Cet argument n'est disponible que dans Microsoft Excel pour le Macintosh.

Alimentation Type d'alimentation en papier

1 ou omis Continue (cassette à papier)
2 Feuille à feuille (manuelle)

Qualité Spécifie la qualité en DPI souhaitée. Si cet argument est omis, les paramètres correspondants dans la boîte de dialogue Mise en page sont utilisés. S'il est inclus, cet argument remplace l'argument qualité de la boîte de dialogue Mise en page.
Y_résolution correspond à la zone "Qualité d'impression" dans la boîte de dialogue Mise en page si la résolution horizontale et verticale de l'imprimante sont différentes, comme c'est le cas avec une imprimante matricielle. Si cet argument est omis, les paramètres correspondants dans la boîte de dialogue Mise en page sont utilisés. S'il est inclus, cet argument remplace le paramètre qualité d'impression dans la boîte de dialogue Mise en page.

Sélection spécifie quelle partie de la feuille imprimer.

Sélection Partie imprimée


1 Imprime la sélection en cours dans toutes les feuilles sélectionnées. Par exemple, si A1:F40 est sélectionné sur la feuille active, A1:F40 sera imprimé à partir de chaque feuille sélectionnée.
2 Imprime la zone d'impression ou la totalité de la feuille pour toutes les feuilles sélectionnées.
3 Imprime la zone d'impression ou la totalité de la feuille pour toutes les feuilles du classeur.
On appelle la macro comme suit
Code :
1
2
 
    ExecuteExcel4Macro "PRINT(Arg1,Arg2,,,,,,,,,...)"
cordialement
__________________
fred65200
Pensez à cliquer sur
fred65200 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 15/06/2011, 12h12   #2
Nouveau Membre du Club
 
Inscription : mai 2006
Messages : 61
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2006
Messages : 61
Points : 27
Points : 27
Bonjour,

J'ai utilisé le Application.ExecuteExcel4Macro "PAGE.SETUP(". Pendant 20 min çà marchait plutôt nickel puis après plus rien... le PAGE.SETUP se lance mais ne réagit pas!!
Avez vous des pistes?

Merci beaucoup

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
'Procédure de mise en page utilisant les macros Xl4, pour un gain de temps substentiel
Sub mise_enpage() '(W As Worksheet)
 
'au cas où quelques sources
'http://www.developpez.net/forums/d555722/logiciels/microsoft-office/excel/contribuez/mise-page-macros-xl4/
'http://www.mrexcel.com/forum/showthread.php?t=9141
Dim Str_macro As String
 
'W.Activate
Str_macro = "PAGE.SETUP("
Str_macro = Str_macro & Chr(34) & Format(Date, "dd mmmm yyyy") & Chr(34)  'en_tête
Str_macro = Str_macro & ", ""&Z&F\&A""" 'pied_pg
Str_macro = Str_macro & ", 0.17, 0.17, 0.17, 0.37" 'marges gauche,droite,haut,bas
Str_macro = Str_macro & ", FALSE" 'En-tête de ligne et de colonne
Str_macro = Str_macro & ", FALSE" 'quadrillage
Str_macro = Str_macro & ", TRUE, FALSE" 'centrage horizontal,vertical
Str_macro = Str_macro & ", 2" 'orientation - 2=paysage
Str_macro = Str_macro & ", 9" 'papier - 9=A4
Str_macro = Str_macro & ", TRUE" 'échelle sur une seule page
'Str_macro = Str_macro & ", {1,#N/A}" 'échelle : 1 page en largeur, pas de contrainte en hauteur
Str_macro = Str_macro & ", 100" 'no_pg
Str_macro = Str_macro & ", Auto" 'ordre_impression
Str_macro = Str_macro & ", FALSE" 'cellules en noir & blanc
Str_macro = Str_macro & ", 600" 'qualité
Str_macro = Str_macro & ", 0.18, 0.17" 'marge_en_tête ,marge pied de page
Str_macro = Str_macro & ", FALSE" 'annotations
Str_macro = Str_macro & ", FALSE" 'brouillon
Str_macro = Str_macro & ")"
ExecuteExcel4Macro (Str_macro)
 
 
Debug.Print Str_macro
'Str_macro-->PAGE.SETUP("15 juin 2011", "&Z&F\&A", 0.17, 0.17, 0.17, 0.37, FALSE, FALSE, TRUE, FALSE, 2, 9, TRUE, 100, Auto, FALSE, 600, 0.18, 0.17, FALSE, FALSE)
End Sub
tinmarbusir est déconnecté   Envoyer un message privé Réponse avec citation 01
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h23.


 
 
 
 
Partenaires

Hébergement Web