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 :

Remplir formulaire Word avec données Excel en VBA


Sujet :

VBA Word

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplir formulaire Word avec données Excel en VBA
    Bonjour à tous et merci par avance de votre aide.

    I° - Voici mon code Excel version 2003.
    Sub M07_Rédaction_MSG_Admissibilité_OAES()

    Dim fin&, i&, X&, aa As Variant, A&, n&, suite As Boolean, t$

    '** Mettre le filtre en ligne 10.
    Sheets("Prépa_Msg_Bo").Select
    Rows("10:10").Select
    Selection.AutoFilter

    '** Filtrer sur la colonnes "A" que les lignes non vides.
    Selection.AutoFilter Field:=1, Criteria1:="<>"

    '*** Sélectionner dans la colonne "F" la valeur "OAES - 1" correspondant au candidats admissibles.
    Selection.AutoFilter Field:=7, Criteria1:="OAES - 1"

    '*** Ouvrir le document Word et lance la macro word (éventuellement :wrdApp.Run "Coller_Données_Excel_Msg")
    Dim wrdApp As Object
    Set wrdApp = CreateObject("Word.Application")
    Dim wrdDoc As Object

    wrdApp.Visible = True
    Set wrdDoc = wrdApp.Documents.Open("D:\OaeaEs\08_DIFFUSSIONS_RESULTATS\81_Messages_Bo\811_Préparations_Bo\Doc2.doc")

    ' Lance la macro du document Word.
    wrdApp.Run "Coller_Données_Excel_Msg"

    '*** Coller données les valeurs des cellules Excel qui sont nommées (Obj1, Obj2, Ref1 et Ref2) sur les signets de 1 à 4 dans Word.
    With wrdDoc
    wrdDoc.Bookmarks("Signet1").Range.Text = "Obj1" ' Colle le mot A27 sur signet1 ?
    wrdDoc.Bookmarks("Signet2").Range.Text = "Obj2" ' Colle le mot A28 sur signet2 ?"
    wrdDoc.Bookmarks("Signet3").Range.Text = "Ref1" ' Colle le mot A29 sur signet3 ?"
    wrdDoc.Bookmarks("Signet4").Range.Text = "Ref2" ' Colle le mot A30 sur signet4 ?

    wrdDoc.Bookmarks("Signet5").Range.Text = ("A10:A800") ' Colle le mot A30 sur signet4
    End With

    Range("G1").Select
    End Sub

    ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    II° - Voici mon code Word version 2003 dans mon document "Doc2.doc".
    Sub Coller_Données_Excel_Msg() ' Macro enregistrée le 01/05/2014

    '** Supprimer les données des concours Oaes antérieurs.
    Selection.MoveDown Unit:=wdLine, Count:=10
    Selection.MoveRight Unit:=wdCell
    ActiveWindow.ActivePane.VerticalPercentScrolled = 1
    Selection.Delete Unit:=wdCharacter, Count:=1

    '** Coller les données contenues dans le presse papier de la feuille "Prépa_Msg_Bo" Excel.
    Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, _
    DisplayAsIcon:=False

    End Sub

    ' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    MA DEMANDE :
    J'arrive à coller une valeur "Obj1 dans le signet1, mais je ne parviens pas à enchaîner les collages de toutes mes valmeurs Excel sur mon document Word.
    Voici les zones Excel à transférer :
    '*** Recherche la zone nommée "Obj1" dans la feuille "Prépa_Msg_Bo" pour Signet1 de Doc2.
    'Application.Goto Reference:="Obj1"
    'Selection.Copy
    '*** Recherche la zone nommée "Obj2" dans la feuille "Prépa_Msg_Bo" pour Signet2 de Doc2.
    'Application.Goto Reference:="Obj2"
    'Selection.Copy
    '*** Recherche la zone nommée "Ref1" dans la feuille "Prépa_Msg_Bo" pour Signet3 de Doc2.
    'Application.Goto Reference:="Ref1"
    'Selection.Copy
    '*** Recherche la zone nommée "Ref2" dans la feuille "Prépa_Msg_Bo" pour Signet4 de Doc2.
    'Application.Goto Reference:="Ref2"
    'Selection.Copy
    '*** Sélectionne la zone à copier de la feuille "Prépa_Msg_Bo" pour le Signet5 de Doc2 correspondant au TEXTE du Msg.
    'Sheets ("Prépa_Msg_Bo")
    'Range("A10:A800").Select
    'Selection.Copy

    MERCI POUR VOTRE AIDE
    Cordialment Pierre - LPZ34

    Mon Fichier excel est très volumineux mais je mets en PJ le Doc2 Word.Doc2.doc

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, balise ton code stp.

  3. #3
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Pourquoi ne pas plutôt simuler un publipostage ? Dans le fond, un publipostage c'est mettre des contenus de champs (Prénom, nom, adresse etc.) à un endroit déterminé d'un document Word. Personne n'a jamais dit que les champs en question pouvaient être autre chose que des champs de noms et d'adresses.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplir formulaire Word avec données Excel en VBA
    Citation Envoyé par clementmarcotte Voir le message
    Bonjour,

    Pourquoi ne pas plutôt simuler un publipostage ? Dans le fond, un publipostage c'est mettre des contenus de champs (Prénom, nom, adresse etc.) à un endroit déterminé d'un document Word. Personne n'a jamais dit que les champs en question pouvaient être autre chose que des champs de noms et d'adresses.


    RÉPONSE : Bonjour et Merci pour ton aide
    Je connais le publipostage et pour ce type de formulaire cette option n'est pas valable.
    Car le signet 5 regroupe plusieurs lignes (A11:A800) selon le filtre de la macro Excel
    Pierre

  5. #5
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplier formulaure Word par Excel en VBA
    Citation Envoyé par kiki29 Voir le message
    Salut, balise ton code stp.

    REPONSE : Bonjour à toi et Merci pour ton aide

    Balise ton code, cela veut dire quoi ?

    1°) - sur excel j'ai nommé au moins 4 zones (Obj1, Obj2, Ref1 et2).

    2°) - Sur Word j'ai insérer les signets de 1 à 5.

    Mon problème est de faire le lien.
    Pierre

    PS : Le formilaire selon le texte en insérer à partir du signet 5 peut faire plusieurs pages.

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par lpz34 Voir le message
    REPONSE : Bonjour à toi et Merci pour ton aide

    Balise ton code, cela veut dire quoi ?
    Sélectionner le code et cliquer sur le dièse à la fin de la seconde barre d'outils.

    Cela facilite la vie des lecteurs.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Abraracourcix()
        msgbox("Je suis le plus beau, je suis le plus fort, je suis le meilleur")
    end sub
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplir formulaire Word avec données Excel en VBA
    Citation Envoyé par clementmarcotte Voir le message
    Sélectionner le code et cliquer sur le dièse à la fin de la seconde barre d'outils.

    Cela facilite la vie des lecteurs.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Abraracourcix()
        msgbox("Je suis le plus beau, je suis le plus fort, je suis le meilleur")
    end sub


    Bonjour, et merci de me suivre
    Après plusieurs jour, j'y suis arrivé.
    Mon code peut-il être amélioré ?
    Je dois maintenant affiner ma sélection (A10:A800). Je voudrais copier jusqu'à la dernière ligne renseignée (en clair supprimer que les paragraphes situés après ma dernière lignes non vide).

    I°) - Voici mon code Excel :
    Sub M07_Rédaction_MSG_Admissibilité_OAES() ' Macro enregistrée le 01/05/2014

    'Dim fin&, i&, X&, aa As Variant, A&, n&, suite As Boolean, t$

    '** Mettre le filtre en ligne 10.
    Sheets("Prépa_Msg_Bo").Select
    Rows("10:10").Select
    Selection.AutoFilter

    '** Filtrer sur la colonnes "A" que les lignes non vides.
    Selection.AutoFilter Field:=1, Criteria1:="<>"

    '*** Sélectionner dans la colonne "F" la valeur "OAES - 1" correspondant au candidats admissibles.
    Selection.AutoFilter Field:=7, Criteria1:="OAES - 1"

    ' xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    '*** Ouvrir le document Word et lance la macro word (éventuellement :wrdApp.Run "Coller_Données_Excel_Msg")
    Dim wrdApp As Object
    Set wrdApp = CreateObject("Word.Application")
    Dim wrdDoc As Object

    wrdApp.Visible = True
    Set wrdDoc = wrdApp.Documents.Open("D:\OaeaEs\08_DIFFUSSIONS_RESULTATS\81_Messages_Bo\811_Préparations_Bo\Doc2.doc")

    '*** Renseigner l'objet du message.
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A27" (zone nommée "Obj1") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet1").Range.Text = Range("A27")
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A28" (zone nommée "Obj2") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet2").Range.Text = Range("A28")

    '*** Renseigner le ou les références du message.
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A29" (zone nommée "Ref1") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet3").Range.Text = Range("A29")
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A30" (zone nommée "Ref2") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet4").Range.Text = Range("A30")

    '*** Sélectionne la zone à copier de la feuille "Prépa_Msg_Bo" pour le Signet5 de Doc2 correspondant au TEXTE du Msg.
    Sheets("Prépa_Msg_Bo").Select
    Range("A10:A800").Select
    Selection.Copy
    'Puis lancer la macro du fichier Doc2 qui colle les données (A10:A800).
    wrdApp.Run "Coller_Données_Excel_Msg" ' Cette macro est insérer dans mon Doc2.doc

    Range("G1").Select
    End Sub

    ----------------------------------------------------------------------------------------------------------------------------------------------------

    II°) - Voici mon code Word:
    Sub Coller_Données_Excel_Msg() ' Macro enregistrée le 01/05/2014

    '*** Atteindre le signet 5 pour coller le corps (TESTE) du message.
    Selection.GoTo What:=wdGoToBookmark, Name:="Signet5"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
    .Text = """"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindAsk
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll

    '*** Coller les données contenues dans le presse papier dans le document Word "Doc2".
    'wrdDoc.Bookmarks("Signet5").Range ("A10:A800")
    Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, _
    DisplayAsIcon:=False

    '*** Effacer le caractère spécial : "
    Selection.WholeStory
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
    .Text = """"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindAsk
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll

    '*** Lancer l'enregistrement sous ?
    '*** Code à trouver

    End Sub

  8. #8
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Pourtant, je t'ai expliqué comment mettre les balises (BALISER) pour identifier correctement ton code dans ton message
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplir formulaire Word avec données Excel en VBA
    Citation Envoyé par kiki29 Voir le message
    Salut, balise ton code stp.
    Bonsoir,

    Je viens de poster une suite à ma demande.
    J'ai réussi à réaliser mon objectif à 75%.

    1°) - Mon code peut-il être amélioré ?

    2°) - je voudrais que ma sélection ne copie pas les paragraphes après ma dernières ligne renseignée.

    3°) - et mon objectif sera atteint si je peux ouvrir la boite de dialogue qui me permet d'enregistrer le document jusqu'au répertoire "D:\OaeaEs"
    Mon code fonctionne pour le 3ème point :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub EnregisterSous ()
     
    '*** Puis lancer la macro du fichier du message qui ouvre la boîte de dialogue "Enregisterr sous ?
        'FichierChoisi = Excel.Application.GetOpenFilename
        ChangeFileOpenDirectory "D:\OaeaEs\08_DIFFUSSIONS_RESULTATS\"
        Application.Dialogs.Item(wdDialogFileSaveAs).Show
     
    End Sub
    Merci, je continu à chercher. Pierre

  10. #10
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Novembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Remplir formulaire Word avec données Excel en VBA
    Citation Envoyé par clementmarcotte Voir le message
    Pourtant, je t'ai expliqué comment mettre les balises (BALISER) pour identifier correctement ton code dans ton message

    Enfin j'ai trouvé le l'emplacement de #. Merci je comprend un peu mieux, l'objectif est de numéroter les ligne.

    I°) - Voici mon code Excel :
    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 M07_Rédaction_MSG_Admissibilité_OAES() ' Macro enregistrée le 01/05/2014
     
    'Dim fin&, i&, X&, aa As Variant, A&, n&, suite As Boolean, t$
     
    '** Mettre le filtre en ligne 10.
    Sheets("Prépa_Msg_Bo").Select
    Rows("10:10").Select
    Selection.AutoFilter
     
    '** Filtrer sur la colonnes "A" que les lignes non vides.
    Selection.AutoFilter Field:=1, Criteria1:="<>"
     
    '*** Sélectionner dans la colonne "F" la valeur "OAES - 1" correspondant au candidats admissibles.
    Selection.AutoFilter Field:=7, Criteria1:="OAES - 1"
     
    ' xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    '*** Ouvrir le document Word et lance la macro word (éventuellement :wrdApp.Run "Coller_Données_Excel_Msg")
    Dim wrdApp As Object
    Set wrdApp = CreateObject("Word.Application")
    Dim wrdDoc As Object
     
    wrdApp.Visible = True
    Set wrdDoc = wrdApp.Documents.Open("D:\OaeaEs\08_DIFFUSSIONS_RESULTATS\81_Messages_Bo\811_Préparations_Bo\Doc2.doc")
     
    '*** Renseigner l'objet du message.
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A27" (zone nommée "Obj1") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet1").Range.Text = Range("A27")
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A28" (zone nommée "Obj2") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet2").Range.Text = Range("A28")
     
    '*** Renseigner le ou les références du message.
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A29" (zone nommée "Ref1") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet3").Range.Text = Range("A29")
    '* Rechercher le Signet1 de Doc2 et coller le contenu de la cellule "A30" (zone nommée "Ref2") dans la feuille "Prépa_Msg_Bo".
    wrdDoc.Bookmarks("Signet4").Range.Text = Range("A30")
     
    '*** Sélectionne la zone à copier de la feuille "Prépa_Msg_Bo" pour le Signet5 de Doc2 correspondant au TEXTE du Msg.
    Sheets("Prépa_Msg_Bo").Select
    Range("A10:A800").Select
    Selection.Copy
    'Puis lancer la macro du fichier Doc2 qui colle les données (A10:A800).
    wrdApp.Run "Coller_Données_Excel_Msg" ' Cette macro est insérer dans mon Doc2.doc
     
    Range("G1").Select
    End Sub
    ----------------------------------------------------------------------------------------------------------------------------------------------------

    II°) - Voici mon code Word:

    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
    46
    47
    48
    49
    50
    51
    Sub Coller_Données_Excel_Msg() ' Macro enregistrée le 01/05/2014
     
    '*** Atteindre le signet 5 pour coller le corps (TESTE) du message.
    Selection.GoTo What:=wdGoToBookmark, Name:="Signet5"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
    .Text = """"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindAsk
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
     
    '*** Coller les données contenues dans le presse papier dans le document Word "Doc2".
    'wrdDoc.Bookmarks("Signet5").Range ("A10:A800")
    Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, _
    DisplayAsIcon:=False
     
    '*** Effacer le caractère spécial : "
    Selection.WholeStory
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
    .Text = """"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindAsk
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
     
    '*** Lancer l'enregistrement sous ?
    '*** Code à trouver
     
    End Sub

    Je cherche pour le reste. Bonne journée.

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/06/2016, 18h09
  2. Remplir un formulaire WORD avec des données Excel
    Par Giant25 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/02/2015, 16h31
  3. Réponses: 2
    Dernier message: 08/12/2011, 02h14
  4. Réponses: 1
    Dernier message: 28/11/2007, 09h31
  5. [VBA]macro Word avec données de MySQL
    Par Taz_8626 dans le forum VBA Word
    Réponses: 3
    Dernier message: 17/07/2006, 11h39

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