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 :

Définir le numéro de la page active sous Word


Sujet :

VBA Word

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 120
    Points : 46
    Points
    46
    Par défaut Définir le numéro de la page active sous Word
    Bonjour everybody!

    Je voudrais définir le numéro de ma page active dans mon code sous Word.
    J'ai écrit le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim toto as integer
    ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).PageNumbers = "toto"
    Le pb c'est qu'il me met que l'argument est non facultatif.

    Merci de me faire part de vos idées.
    [/code]

  2. #2
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    Je suis super nul en macros Word, mais dans l'aide (F1), il est bien dit que PageNumers te renvoie une collection. Donc ce n'est pas l'objet que tu cherches...
    Et je n'ai pas bien compris ce que tu veux faire. Tu veux que la n-ième page de ton doc soit affichée à l'écran?

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 120
    Points : 46
    Points
    46
    Par défaut
    en fait je me suis mal exprimé,désolé.
    ouskel'n'or m'a expliqué comment recherché un mot dans un doc Word et copier la phrase correspondante sur un autre document.
    Maintenant j'ai besoin mettre sur mon nouveau doc le numéro de la page sur laquelle se situe chaqun des mots trouvés à l'aide d'un code supplémentaire et vu mon niveau je galère un peu beaucoup...

  4. #4
    Membre expérimenté Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Points : 1 405
    Points
    1 405
    Par défaut
    J'ai cherché un peu, mais comme je te l'ai dit, en macro Word, je suis vraiment super léger...
    Cependant, je me pose une question: le numéro de la page sur laquelle un mot est écrit n'est pas une donnée intrinsèque. Je veux dire qu'elle dépend de données externe, telles que le format du papier sur lequel tu veux imprimer, ou de la taille de ton écran. Bref, je me demande si on peut le récupérer simplement...
    En tout cas, pour le moment, je n'y arrive pas, et il va falloir l'aide d'un WordPro...

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Hello,

    Avant que je cherche... ne peux-tu pas prendre le problème en sens inverse et écrire sur la page choisie par toi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:="3"
    Cette ligne te place sur la page 3 de ton document.
    Tu as l'autre solution consistant à te rendre à la fin du document :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Selection.EndKey Unit:=wdStory
    Quant à PageNumers, je n'ai pas ça (office 97) et laisserai MegaPixel te dire comment l'utiliser...

    A+

    Je viens de regarder, j'ai "PageNumbers". Je creuse...

  6. #6
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 120
    Points : 46
    Points
    46
    Par défaut
    en fait j'ai besoin de récupérer le numéro de la feuille qui se situe dans l'en tête de la page.
    Ne vous cassez pas trop la tête, pt être que c'est tout simplement pas possible!

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    en fait j'ai besoin de récupérer le numéro de la feuille
    Voilà, j'ai trouvé. Tu n'as pas le N° indiqué dans l'entête, tu es placé sur la page N°. Point !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        NoPage = 3 
        Selection.EndKey Unit:=wdStory 
        Selection.GoTo What:=wdGoToPage, Count:=NoPage
    épicétou !

    Non mais ! Depuis le temps que je cherche pour mon usage perso...


    Maintenant, si tu as vraiment besoin de connaître le N° de la page sur laquelle tu te trouves, tu confirmes... le temps que je trouve ça...

    A+

  8. #8
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 120
    Points : 46
    Points
    46
    Par défaut
    ca y ait ca marche trés bien merci de votre aide!

  9. #9
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Tu as trouvé comment trouver le N° de page dans Word ?

    Alors, s'il te plait beaucoup, tu peux mettre la solution ? Sur les 56 qui sont venus sur ta question, on sera plusieurs à t'en être éternellement reconnaissant...

    A+

  10. #10
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 120
    Points : 46
    Points
    46
    Par défaut
    en fait j'ai abandonné la méthode du N° de page et je copie simplement la ligne qui correspond au mot trouvé... qd j'ai dit que ca marchait je voulais pas dire pour le N° de page désolé!
    Mon code est le suivant:

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    Sub chercher_bluelines()
     
    Dim ok As Boolean
    Dim NomDocPrincipal
    Dim toto As Integer
     
        NomDocPrincipal = ActiveDocument.Name
        'place en haut du document
        'Selection.HomeKey Unit:=wdStory
        'ok = True
        'Do While oknuméro page active
    début:
        With Selection.Find
            .Text = ChrW(61510)
            .Forward = True
            .Wrap = wdFindAsk
            .Format = True
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
     
            Do While .Execute(FindText:=ChrW(61510), Forward:=True, _
                Format:=True) = True
     
                'ActiveDocument.PageSetup.
     
                ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).PageNumbers = "toto"
                'Place en début de ligne
                Selection.HomeKey Unit:=wdLine
     
                'Sélectionne toute la ligne
                Selection.EndKey Unit:=wdLine, Extend:=wdExtend
                Selection.Cut
                Documents.Open FileName:="c:\PROFILES\delamarque\Desktop\Procédures\bluelines.doc"
                Selection.Paste
                Documents(NomDocPrincipal).Select
     
            GoTo début
            Loop
     
         End With
     
    End Sub
    A +

    [Balises "Code" ajoutées par AlainTech]
    [Pensez-y vous-même à l'avenir. Merci. ]

  11. #11
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Deux choses à te dire :
    On n'utilise jamais goto dans une boucle.
    Je t'explique le problème : Chaque fois que tu utilises goto, tu stockes une nouvelle adresse en mémoire. Or à force de stocker, il n'y a plus de place et ton programme se plante. Ce "risque" devient une certitude, si tu mets goto dans une boucle, de voir un jour ou l'autre ton programme se planter.
    Ton idée de "do loop while... " était bonne. Essaie de trouver une condition qui colle pour en sortir.

    Enfin tu peux alléger ta procédure en supprimant toutes les propriétés qui sont déjà affectées par défaut à l'objet. Par exemple, tu peux supprimer tout ça :
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
    Si j'ai pu t'aider...

    A+

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

Discussions similaires

  1. Mise en page Tableau sous Word
    Par PoluxProg dans le forum VBA Word
    Réponses: 7
    Dernier message: 04/02/2008, 22h09
  2. Absence de Page 1 sous WORD
    Par tiftay01 dans le forum Word
    Réponses: 5
    Dernier message: 07/11/2006, 13h55
  3. [PDF - FOP - XSL] Récupérer le numéro d'une page
    Par caro. dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 15/02/2005, 11h35
  4. problème avec une page web sous firefox!
    Par 3psilOn dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/11/2004, 11h49
  5. Tester connexion Internet active sous Windows
    Par Altau dans le forum Développement
    Réponses: 3
    Dernier message: 12/08/2002, 12h43

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