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 :

[VBA Word] : Selectionner les header les uns après les autres


Sujet :

VBA Word

  1. #1
    Membre habitué
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Janvier 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2007
    Messages : 255
    Points : 164
    Points
    164
    Par défaut [VBA Word] : Selectionner les header les uns après les autres
    Bonjour,

    afin de me permettre de faire une mise à jour massive de mes headers dans un document word, je cherche un moyen de faire une macro VBA qui boucle sur toutes les sections, qui sélectionne le header de la section en question et qui fait un lien de ce header vers le précédent.

    J'ai toutes les infos mais je sais pas comment faire pour sélectionner un header précis d'une section donnée.

    D'avance merci pour vos retours

  2. #2
    Membre habitué
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Janvier 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2007
    Messages : 255
    Points : 164
    Points
    164
    Par défaut
    Ben en faite, je suis arrivé à cette solution. Y'a surement mieux mais pour l'instant ca marche.

    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
     
    Sub LinkHeaderFooterToPrevious()
        ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
        For Li = 2 To ActiveDocument.Sections.Count
            If ActiveDocument.Sections(Li).Headers(1).LinkToPrevious <> True Then
     
                ActiveDocument.Sections(Li).Headers(wdHeaderFooterPrimary).Range.WholeStory
                ActiveDocument.Sections(Li).Headers(1).LinkToPrevious = True
                MsgBox "Header de la section : " & Li
            End If
     
            If ActiveDocument.Sections(Li).Footers(1).LinkToPrevious <> True Then
     
                ActiveDocument.Sections(Li).Footers(wdHeaderFooterPrimary).Range.WholeStory
                ActiveDocument.Sections(Li).Footers(1).LinkToPrevious = True
                MsgBox "Footer de la section : " & Li
            End If
        Next
    End Sub

  3. #3
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Il y a trois types de headers, les headers de première page, les headers normaux et pour page paires et impaires.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub headersParcours()
     
    Dim sec As Section
     
    For Each sec In ActiveDocument.Sections
        sec.Headers(wdHeaderFooterPrimary).LinkToPrevious = True
    Next sec
     
     
     
    End Sub

  4. #4
    Expert éminent
    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 : 61
    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
    Points : 6 856
    Points
    6 856
    Par défaut Pour modifier les entêtes
    Salut,

    Pour tester si les entêtes et pieds de page sont différents pour la 1ere page ou pour les pages et impaires, il faut tester l'objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.Sections<monN°DeSection>.PageSetup
    sur les 2 propriétés suivantes: DifferentFirstPageHeaderFooter (pour la 1ere page différente) et OddAndEvenPagesHeaderFooter (pour les pages paires et impaires différentes).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Exécuter des .bat les uns après les autres
    Par devilsnake88 dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 14/09/2022, 19h28
  2. Réponses: 4
    Dernier message: 04/02/2014, 16h38
  3. [PHP 5.0] Lancer des scripts les uns après les autres
    Par Mandarine dans le forum Langage
    Réponses: 13
    Dernier message: 29/06/2011, 00h27
  4. Réponses: 32
    Dernier message: 28/08/2007, 19h57
  5. Lancer plusieurs batch les uns apres les autres
    Par n8ken dans le forum Administration système
    Réponses: 4
    Dernier message: 04/01/2007, 07h59

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