IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Problèmes pour coder la mise en page


Sujet :

VBA Word

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Par défaut Problèmes pour coder la mise en page
    Bonjour à tous,

    J'ai fait une macro Word qui permet de concaténer plusieurs documents Word dans 1 seul.

    Chaque document de départ tient sur une page.

    Malheureusement dans le document final, certains documents sources sont séparés sur 2 pages.

    Quand je modife la taille des marges dans le document final (il faut que j'aille dans mise-en-page et que je choisisse "appliquer à tout le document"), tout se remet en place, il n'y a plus de sauts de pages intempestifs.

    Donc je voudrai définir ces settings par du code VBA mais rien n'y fait, cela ne marche que manuellement : je n'arrive pas à voir comment on code l'option "appliquer à tout le document".

    voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    With docCompendiumFinal.Content.PageSetup
        .LineNumbering.Active = False
        .Orientation = wdOrientPortrait
        .TopMargin = CentimetersToPoints(1)
        .BottomMargin = CentimetersToPoints(0.5)
        .LeftMargin = CentimetersToPoints(2)
        .RightMargin = CentimetersToPoints(2)
        .Gutter = CentimetersToPoints(0)
        .HeaderDistance = CentimetersToPoints(0.9)
        .FooterDistance = CentimetersToPoints(0)
        .PageWidth = CentimetersToPoints(21.59)
        .PageHeight = CentimetersToPoints(27.94)
        .FirstPageTray = wdPrinterDefaultBin
        .OtherPagesTray = wdPrinterDefaultBin
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = True
        .VerticalAlignment = wdAlignVerticalTop
        .SuppressEndnotes = False
        .MirrorMargins = False
        .TwoPagesOnOne = False
        .BookFoldPrinting = False
        .BookFoldRevPrinting = False
        .BookFoldPrintingSheets = 1
        .GutterPos = wdGutterPosLeft
        .LayoutMode = wdLayoutModeDefault
    End With
    Auriez-vous une idée ?

    Merci beaucoup d'avance.

    Laurent.

  2. #2
    Expert confirmé
    Avatar de Sepia
    Homme Profil pro
    Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Inscrit en
    Octobre 2007
    Messages
    3 117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3 117
    Par défaut
    Salut Laurent,

    As-tu essayer de sélectionner ton document, pour lui appliquer ta mise en forme ? Pour cela, remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    With docCompendiumFinal.Content.PageSetup
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Selection.WholeStory
    With Selection.Content.PageSetup
    @+

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Par défaut
    Sepia,

    Merci pour ta réponse.

    J'ai essayé ce que tu as dit mais malheureusement, c'est pareil.

    Laurent.

  4. #4
    Expert confirmé
    Avatar de Sepia
    Homme Profil pro
    Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Inscrit en
    Octobre 2007
    Messages
    3 117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3 117
    Par défaut
    Salut Laurent,


    je viens de réessayer avec mon mac (car parfois le code généré n'est pas identique à celui du PC) et c'est le cas. L'enregistreur de macros sur Mac me donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With ActiveDocument.PageSetup
    et non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With ActiveDocument.Content.PageSetup
    ce qui donnerait pour ton cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With docCompendiumFinal.PageSetup
    Il faudrait essayer

    @+

  5. #5
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Par défaut
    Sepia,

    J'ai essayé ce que tu m'as dit mais c'est pareil.

    Laurent.

  6. #6
    Expert confirmé
    Avatar de Sepia
    Homme Profil pro
    Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Inscrit en
    Octobre 2007
    Messages
    3 117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur du cursus IDE@L - Chef de Projet NCU (digital learning) - Université de Rennes
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3 117
    Par défaut
    Salut Laurent,

    J'ai refait des tests et ça marche sans problème sur mon PC (Word 2003) aussi ==> ???

    Désolé

    @+

Discussions similaires

  1. Probléme de Menu vs mise en pages
    Par Bobskye dans le forum Débuter
    Réponses: 2
    Dernier message: 02/05/2010, 16h48
  2. Problème pour rediriger sur une autre page html
    Par PatMh77 dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 05/05/2008, 07h48
  3. [MySQL] j'ai un probléme pour faire la mise à jour de ma table mysql
    Par kebson dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/06/2007, 16h50
  4. [VBA-E] Problème pour coder une boucle
    Par lord-asriel dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/03/2007, 10h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo