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 :

Copier le contenu d'une cellule excel et le coller dans un fichier doc word précis


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Sans emploi - Autonome
    Inscrit en
    Mars 2018
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sans emploi - Autonome

    Informations forums :
    Inscription : Mars 2018
    Messages : 130
    Par défaut Copier le contenu d'une cellule excel et le coller dans un fichier doc word précis
    Bonjour,

    J'ai réalisé une macro permettant d'aller chercher le contenu d'un fichier texte et de le copier dans une cellule de ma feuille excel.

    A présent, je souhaiterais une deuxième macro qui copie la valeur d'une cellule de mon fichier Excel puis la colle dans un fichier doc (ex z:\test\toto.doc).

    Par exemple, j'aimerai dans un ordre précis qu'il me copie la cellule A1 provenant de ma feuille excel et le colle dans le fichier doc suivi d'un saut à la ligne, puis qu'il me copie la cellule C1 suivi d'un saut à la ligne.

    pouvez vous m'aider svp ?

    Merci.

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    A l'emplacement du document Word où tu veux implanter la valeur, tu places un bookmark (Ruban Insertion > Icone Signet).

    Ensuite, ta macro se limite à trois lignes :
    - Déclarer une variable de type String
    - Mettre le contenu de ta cellule (propriété Text plutôt que Value) dans la variable de type String
    - Mettre le contenu de la variable String à la place du bookmark

    Pour la dernière étape, voir :
    https://msdn.microsoft.com/fr-fr/vba...rk-object-word
    https://msdn.microsoft.com/fr-fr/vba...ge-object-word
    https://msdn.microsoft.com/fr-fr/vba...-property-word

    Il est sans doute possible de faire ça en une ligne en transférant directement le contenu de la cellule dans le bookmark mais ayant eu des déconvenues en procédant ainsi, je conseille de passer par le rouleau compresseur d'une variable String.

  3. #3
    Membre confirmé
    Homme Profil pro
    Sans emploi - Autonome
    Inscrit en
    Mars 2018
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sans emploi - Autonome

    Informations forums :
    Inscription : Mars 2018
    Messages : 130
    Par défaut
    Citation Envoyé par Menhir Voir le message
    A l'emplacement du document Word où tu veux implanter la valeur, tu places un bookmark (Ruban Insertion > Icone Signet).

    Ensuite, ta macro se limite à trois lignes :
    - Déclarer une variable de type String
    - Mettre le contenu de ta cellule (propriété Text plutôt que Value) dans la variable de type String
    - Mettre le contenu de la variable String à la place du bookmark

    Pour la dernière étape, voir :
    https://msdn.microsoft.com/fr-fr/vba...rk-object-word
    https://msdn.microsoft.com/fr-fr/vba...ge-object-word
    https://msdn.microsoft.com/fr-fr/vba...-property-word

    Il est sans doute possible de faire ça en une ligne en transférant directement le contenu de la cellule dans le bookmark mais ayant eu des déconvenues en procédant ainsi, je conseille de passer par le rouleau compresseur d'une variable String.
    Salut,

    J'ai essayé la méthode avec les signets, ça marche pour une seule plage de cellule.

    Par contre, si je souhaite copie/colle une autre cellule mais d'une autre colonne à mon doc grâce aux signets cela ne fonctionne plus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For j = 7 To 11
            WordDoc.Bookmarks("SignetRAP" & j).Range.Text = Cells(i, 2)
        Next j
    Voici mon 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
     
     
    Dim WordApp As Object
    Dim WordDoc As Object
    Dim i As Byte
     
    Set WordApp = CreateObject("word.application") 'ouvre session word
    Set WordDoc = WordApp.Documents.Open("D:\Users\Desktop\prog1_fic\test.doc") 'ouvre document Word
    WordApp.Visible = False 'word masqué pendant l'operation
     
        For i = 1 To 5
            les signets du document Word sont nommés Signet1 , Signet2 , Signet3
            WordDoc.Bookmarks("Signet" & i).Range.Text = Cells(i, 3)
        Next i
     
        'For j = 7 To 11
        '    WordDoc.Bookmarks("SignetRAP" & j).Range.Text = Cells(i, 2)
       ' Next j
     
    WordApp.Visible = True 'affiche le document Word

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par SpaceX Voir le message
    J'ai essayé la méthode avec les signets, ça marche pour une seule plage de cellule.
    Par contre, si je souhaite copie/colle une autre cellule mais d'une autre colonne à mon doc grâce aux signets cela ne fonctionne plus :
    Je ne vois pas trop pourquoi...
    Il suffit de mettre autant de signets que nécessaires et de faire attention que les noms qu'on leur donne correspondent aux noms par lesquels on les appelle dans la macro.
    Perso, j'ai une macro où je transferts une quarantaine de valeurs Excel dans autant de signets Word et tout marche sur des roulettes.

  5. #5
    Membre confirmé
    Homme Profil pro
    Sans emploi - Autonome
    Inscrit en
    Mars 2018
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sans emploi - Autonome

    Informations forums :
    Inscription : Mars 2018
    Messages : 130
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Je ne vois pas trop pourquoi...
    Il suffit de mettre autant de signets que nécessaires et de faire attention que les noms qu'on leur donne correspondent aux noms par lesquels on les appelle dans la macro.
    Perso, j'ai une macro où je transferts une quarantaine de valeurs Excel dans autant de signets Word et tout marche sur des roulettes.
    Salut,

    Tes 40 valeurs sont situées dans la même colonne ?

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par SpaceX Voir le message
    Tes 40 valeurs sont situées dans la même colonne ?
    Mes 40 bookmarks sont situés dans différentes pages d'un document de plusieurs pages.
    Et les données sources sont dans plusieurs colonnes et plusieurs lignes, chaque ligne représentant un document Word différent.

Discussions similaires

  1. [Toutes versions] Macro pour copier le contenu d'une cellule d'un fichier excel et coller dans une form
    Par wizishop dans le forum VBA PowerPoint
    Réponses: 3
    Dernier message: 16/10/2015, 12h05
  2. Réponses: 7
    Dernier message: 20/03/2012, 17h45
  3. Copier le contenu d'une cellule dans une variable sous excel
    Par franckB dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 01/04/2007, 19h54
  4. [VBA]Copier le contenu d'une cellule d'un autre classeur
    Par dudu59 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 01/02/2006, 17h08
  5. Importer le contenu d'une cellule Excel vers Access
    Par deaqu1 dans le forum Access
    Réponses: 7
    Dernier message: 05/11/2005, 15h26

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