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

Macros et VBA Excel Discussion :

Inserer un fichier avec saut de page après


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut Inserer un fichier avec saut de page après
    bonjour,

    je fais un générateur de document word à partir d'un fichier excel

    j' ai des problèmes pour implémenter correctement mes fichiers

    pour comprendre ce qui se passe j'ai fais un petit essai sur une macro directement sur un fichier word

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
     
    Sub essai_w()
     
    Dim T_fic() As String
     
    ChDir "D:\PatrickBrunel\IVQ\etudes\Qualif\Generation\Fiches essais\DO160\DO160_E"
    myName = Dir("*.doc")
    While myName <> ""
    i = i + 1
    ReDim Preserve T_fic(1 To i)
    T_fic(i) = myName
     myName = Dir()
    Wend
    Set cible = ActiveDocument
     
    n_para = cible.Paragraphs.Count
     
    For i_para = 1 To n_para
     
    le_texte = cible.Paragraphs(i_para).Range.Text
     
    If le_texte = "Debut" & Chr(13) Then
     
    For i = 1 To UBound(T_fic)
    pos_ec = i_para + 2
    Set poi = cible.Paragraphs(pos_ec).Range
    poi.Select
     
        With poi
            .Collapse Direction:=wdCollapseEnd
     
            .InsertFile FileName:=T_fic(i), ConfirmConversions:=False
            .MoveEnd unit:=wdCharacter, Count:=1
            .InsertParagraphAfter
            .InsertBreak Type:=wdSectionBreakNextPage
            .Collapse Direction:=wdCollapseEnd
        End With
     
    Next i
     
    End If
    Next i_para
    End Sub
    dans cet exemple je vais chercher une liste de fichiers dans un répertoire et je les implante dans le document word

    tout va bien sauf que le saut de page se fait avant l'implantation et je le veux
    après chaque fichier implanté.

    je pensais que
    .MoveEnd unit:=wdCharacter, Count:=1
    me replacait le curseur aprés
    quelqu'un peut il me dire où je fais l'erreur ?

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Sauf erreur, tu ne peux pas faire tourner une telle macro dans Excel. La macro est écrite pour fonctionner dans Word ?

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut
    pour comprendre ce qui se passe j'ai fais un petit essai sur une macro directement sur un fichier Word
    la question n'est pas si ma macro va bien tourner sous excel, elle ira bien quand je l'implanterai sur le support final, ne pas se soucier de cela car ce que je fais dans la macro qui est sous Excel est beaucoup plus compliqué et n'apporte rien au pb que je soulève.

    le comportement est le même sous word que sous excel où je me sers d'une instance de word.

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    ce n'est ni la bonne méthode ni la bonne unité dans le code …

    Mais faudrait p't'être pas pousser Mémé dans les orties ‼

    Déjà c'est un souci Word donc cette discussion est située dans le mauvais forum …

    Ensuite pour la partie posant problème, rien n'empêche de le faire dans Word en utilisant l'Enregisteur de macros !
    En effectuant évidemment les bonnes manipulations avec Ctrl + Fin puis l'insertion du saut de page …

  5. #5
    Membre éclairé
    Inscrit en
    Novembre 2007
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 293
    Par défaut
    je ne veux facher personne
    merci de me répondre Marc

    j' ai effectivement enregistré la procédure

    " voilà ce que ça donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Sub Macro3()
    '
    ' Macro3 Macro
    '
    '
        Selection.InsertFile FileName:="Metar.doc", Range:="", ConfirmConversions _
            :=False, Link:=False, Attachment:=False
        ActiveWindow.ActivePane.VerticalPercentScrolled = 93
        Selection.EndKey Unit:=wdStory
        Selection.MoveUp Unit:=wdLine, Count:=7
        Selection.MoveDown Unit:=wdLine, Count:=1
        Selection.InsertBreak Type:=wdPageBreak
    End Sub
    le document où sont implantés les fichiers n'est pas vide et il faut que je mette les fichiers à des endroits précis.
    bien sur je ne fais pas le saut de page à la fin du fichier mais après le fichier implanté et comme je ne connais pas cette position j' ai du mal à savoir exactement où mettre le saut de page.

    voilà mon besoin:

    dans un doc il ya des chapitres prédefinis disons toto et tata
    je repere en parcourant les chapitres du document l'endroit où se trouve
    toto,
    là j'implante les fichiers toto(1) à toto(n)
    entre chaque fichier il faut imposer un saut de page

    puis je repere le chapitre tata et j'y mets de la même façon les fichiers tata(1) à tata(n).

    y a-t-il un moyen de savoir la position ou le n° du paragraphe courant
    aprés implantation d'un fichier ?

    ps :
    je ne sais pas déplacer cette discussion vers le forum word.

  6. #6
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Effectivement j'avais compris insertion en fin de document, c'eut été trop facile …


    Logiquement, si le chapitre suivant est aussi repéré avant l'insertion,
    donc après insertion il ne reste qu'à rechercher ce chapitre suivant et le précéder d'un saut de page, non ?

    Ou encore le saut de page est d'abord inséré puis remontée d'une ligne pour l'insertion du fichier …


    __________________________________________________________________________________________
    Question bien formulée, solution assurée ! (Robert Durupt)

Discussions similaires

  1. Réponses: 0
    Dernier message: 31/03/2010, 19h12
  2. Sortie vers un fichier avec mise en page
    Par TheVirus2013 dans le forum Général Java
    Réponses: 2
    Dernier message: 30/11/2008, 09h10
  3. inserer un commentaire avec saut de ligne dans un control
    Par jeanboudi dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 20/04/2008, 22h31
  4. Edition avec saut de page
    Par jaoued dans le forum BIRT
    Réponses: 2
    Dernier message: 05/07/2006, 15h54
  5. Créer un docu avec saut de page
    Par luckyvae dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 26/07/2005, 16h29

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