Mise en page Word

Résolu
tolt - 8 mai 2015 à 15:55
 tolt - 9 mai 2015 à 05:12
Bonjour,

Je cherche le moyen de sélectionner automatiquement la liste déroulante de la fenêtre Mise en page de Word Appliquer à tout le document.

J'ai bien trouvé les marges mais ça je trouve pas !

Si vous avez une idée ?
Merci d'avance.


With ObjWord.ActiveDocument.PageSetup
.Orientation = WOrientation
.TopMargin = ObjWord.CentimetersToPoints(WTopMargin)
.BottomMargin = ObjWord.CentimetersToPoints(WBottomMargin)
.LeftMargin = ObjWord.CentimetersToPoints(WLeftMargin)
.RightMargin = ObjWord.CentimetersToPoints(WRightMargin)
End With

3 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 mai 2015 à 17:11
Bonjour,
Où et comment (par quel code) as-tu créé la variable objWord que tu utilises ?
0
Oui là n'est pas la question...
ça marche sans souci.


Set ObjWord = CreateObject("Word.application")
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 8/05/2015 à 23:28
Oh la !
Alors :
C'est toi, qui demandes de l'aide (je te le rappelle) !
Tu es donc prié de donner d'emblée tous les tenants et aboutissants.
Entre autres, maintenant que l'on sait comment tu as créé la variable objWord : ===>
1) Quel document Word as-tu ouvert, et comment ?
2) Dans quel procédure évènementielle as-tu mis ce code ?
3) ce que tu veux faire TRES EXACTEMENT ("le moyen de sélectionner automatiquement la liste déroulante de la fenêtre Mise en page de Word Appliquer à tout le document" n'est pas du développement VBA. Dis ce que tu veux faire que tu ferais à l'aide de cette "fenêtre" ) .
Maintenant : si ce genre de question t'embête, dis-le sans hésiter. Et je te laisserai là sans le moindre état d'âme (que ce soit dit ...)

EDIT : je vois que tu as tagué en RESOLU. Je pense (espère) que tu as défini ton pagesetup par du VBA. Il te suffisait d'ailleurs, pour ce faire, d'utiliser l'enregistreur de macros ===>> et tu as ainsi tout le code dont tu as besoin pour parvenir à tes fins.


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
En fait lorsque vous faites un publipostage le document contient des sections et la mise en page est un plus chiante.
Voilà la solution que j'ai trouvé et elle marche impec.
Merci pour ta réponse et bon week end.


For Xsections = 1 To ObjWord.ActiveDocument.Sections.Count
With ObjWord.ActiveDocument.Sections(Xsections).PageSetup
.Orientation = WOrientation
.TopMargin = ObjWord.CentimetersToPoints(WTopMargin)
.BottomMargin = ObjWord.CentimetersToPoints(WBottomMargin)
.LeftMargin = ObjWord.CentimetersToPoints(WLeftMargin)
.RightMargin = ObjWord.CentimetersToPoints(WRightMargin)
End With
Next Xsections
0
Rejoignez-nous