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

VB 6 et antérieur Discussion :

[VB6]supprimer un saut de page dans Word


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut [VB6]supprimer un saut de page dans Word
    Bonjour,

    J'ai un programme VB qui pilote Word.
    Je n'arrive pas à supprimer un saut de page qui se trouve à la fin de mon document.

    Quelqu'un a-t-il une solution?

    Merci
    Yal17

  2. #2
    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
    Aller en dernière ligne, étendre la sélection d'un caractère vers la gauche et supprimer la sélection

    Tu dis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Selection.EndKey Unit:=wdStory
        Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
        Selection.Delete Unit:=wdCharacter, Count:=1
    Fait en enregistrant la macro (!)

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    J'ai été incomplet.
    En fait, il y a des retours charriot après le saut de page. Mais je ne connais pas leur nombre. Je ne peux donc pas remonter 4 caractères par esemple et supprimer la sélection.

    Sinon, le wdStory pose problème : "L'objet ne gère pas cette propriété ou cette méthode"

  4. #4
    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
    Alors tu vas à la fin de ton document, tu reviens sur le dernier saut de page en sélectionnant et tu effaces tout.
    Je regarde si c'est possible et je te mets ça le cas échéant

    A tout'

  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
    Tiens :
    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
        Selection.EndKey Unit:=wdStory 'envoie à la fin du document
        Selection.Find.ClearFormatting
        'Recherche le premier saut de page vers le haut
        Selection.Find.Replacement.ClearFormatting
        With Selection.Find
            .Text = "^m"
            .Replacement.Text = ""
            .Wrap = wdFindAsk '****** vers le haut ******
        End With
        Selection.Find.Execute
        Selection.Delete Unit:=wdCharacter, Count:=1 'supprime le saut de page
        'Sélectionne les sauts de lignes jusqu'en fin de document
        Selection.EndKey Unit:=wdStory, Extend:=wdExtend
        'Supprime tous les sauts de lignes jusqu'en fin de document
        Selection.Delete Unit:=wdCharacter, Count:=1
    A+

    Edit
    Ajouté ********** ........ *********

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    J'ai supprimé la 1ère ligne de code que j'ai remplacé pour avoir le même résultat.
    Mais la ligne suivante ne passe pas :
    Selection.EndKey Unit:=wdStory, Extend:=wdExtend

    Le wdstory bloque, ainsi que le extend.
    Et du coup, cela ne résoud pas mon problème.

  7. #7
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    T'as quel version de Office? le bon papy Ouskel' roule sous Office 97...

    Salut Ouskel'

  8. #8
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Je fais mes tests avec Office 97 aussi.

    Bravo pour le prochain diplôme, future diplomée.

  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
    Je, pas comprendre, ça :
    J'ai supprimé la 1ère ligne de code que j'ai remplacé pour avoir le même résultat
    Tu peux expliquer pourquoi tu modifies un code qui fonctionne chez moi ?

    Mon code fait une recherche vers le haut. Si tu ne vas pas à la fin du document, et que tu restes au début, il ne trouvera rien.

    A+

    Salut zaza, tu sens que tu es sur le grill ?

  10. #10
    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
    T'as disparu... Je m'inquiète...
    Allez, mets ton code, j'aime pas rester dans l'espectative

  11. #11
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Ne t'inquiète pas! Tout va bien!
    C'est juste que ma boite n'aime pas trop les accès vers Internet. C'est pourquoi je ne reste pas branché en permanence.

    Mon code :
    Selection.collapse direction:=wdCollapseEnd

    Sinon, j'ai essayé directement ton code comme macro WOrd.
    Ca ne fonctionne pas non plus.

  12. #12
    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
    Va falloir que tu mettes un fichier bidon ici avec tout ce qu'il faut pour que TES conditions soient remplies. Mon code fonctionne sur toutes les dernières pages et les vbcr que j'ai ajoutés...

    C'est toi qui vois

    A+

  13. #13
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 333
    Points
    24 333
    Par défaut
    On est bien d'accord que tu utilises VB (6?) pour piloter Word et pas des macros VBA (dans Word)?

    Si c'est le cas, il faudra créer une instance de Word, une du document et "préfixer" toutes les instructions qui se rapportent au document avec cette instance du document.

    Dis-nous.

  14. #14
    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
    Autant pour moi J'avais compris que tu étais dans VBA Word.

  15. #15
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Effectivement, j'utilise VB6.
    J'ai cré en début du module un objet Word avec une référence au niveau du projet vers Word.

    En résumé, mon code ressemble à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private oWord as object
    Private oDocument as object
    J'ai une fonction qui enlève un saut de section qui se trouve au début de page (ça ne répond au sujet de ce post mais avant de venir ici, j'ai essayé différentes déclinaisons à partir de ça)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Sub SuprSautSection()
       Set oSelection = 0Document.Content
       oSelection.Collapse Direction:=wdCollapseStart
       oSelection.delete unit := wdWord, Count:=1
    End Sub

  16. #16
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 333
    Points
    24 333
    Par défaut
    D'où l'intérêt du tag dans le titre!!!

    Que de temps perdu à cause de ça!

    Je le mets pour toi cette fois-ci mais penses-y à l'avenir.

  17. #17
    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
    Juste une info pour connaître le nombre de pages. Tu vas en fin de doc et tu fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        With WdDoc
            .Selection.EndKey Unit:=wdStory
            NoPage = .Selection.Information(wdActiveEndAdjustedPageNumber)
            .Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=NoPage
            'Là, tu te retrouves en début de page NoPage, ton saut de page... 
            '... est le caractère précédent
        end with
    Testé sans "With WdDoc" sur VBA97
    Juste pour l'idée

    A+

  18. #18
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par AlainTech
    D'où l'intérêt du tag dans le titre!!!
    Désolé.

  19. #19
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 26
    Points : 11
    Points
    11
    Par défaut
    Argh!
    Personne ne peut m'aider?

    Yal17

  20. #20
    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
    Montre le code qui te sert à ouvrir ton doc, restera juste à le compléter

    A+

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/04/2014, 20h14
  2. Macro pour supprimer des sauts de page vide word 2007
    Par Sandrine1 dans le forum VBA Word
    Réponses: 6
    Dernier message: 09/11/2010, 22h38
  3. supprimer les sauts de page dans word
    Par juniorglobal08 dans le forum VBA Word
    Réponses: 3
    Dernier message: 08/07/2009, 23h06
  4. VBA : Insertion d'un saut de page dans WORD
    Par Actarus69 dans le forum VBA Word
    Réponses: 1
    Dernier message: 25/04/2006, 14h05

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