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 :

Transférer des données Excel sur Word


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 22
    Par défaut Transférer des données Excel sur Word
    Bonjour,

    Je realise un code qui permet de copié/collé plusieurs tableaux (l'onglet fait 2500 lignes et est généré avec un autre code) dans un fichier word déjà existant.

    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
    Sub test()
     
    Dim appWord As Word.Application
    Dim docWord As Word.Document
     
    Set appWord = CreateObject("Word.Application")
    appWord.Visible = True
    Set docWord = appWord.Documents. _
    Open("C:\User\U452536\Documents\FichierTest.docx", ReadOnly:=True)
     
    Worksheets("Creation Engine Handbook").Range("A1:B20").Copy
     
        appWord.Selection.Paste
     
    End Sub
    le code marche mais j'ai quelques soucis :

    -Je n'arrive pas à collé le tableau à partir de la 2 page du word

    -Je ne sais pas comment faire en sorte que la copie s'effectue jusqu'à la dernière ligne de l'excel car il peut évoluer.
    (j'ai essayé quelque chose comme ça)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    With Feuil12
        LastLigne = .Cells(.Rows.Count, 2).End(xlUp).Row
    -Est t-il possible de faire un saut de page automatique sur word pour evité que le tableau de coupe d'une page à l'autre et d'adpter la taille des colonnes à la page word ?


    Merci pour votre aide

  2. #2
    Expert confirmé
    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
    Par défaut
    Salut, voir les FAQ1 FAQ2

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 22
    Par défaut
    Salut kiki,

    j'ai déjà parcouru ces tutos je m'en suis inspiré pour le début.

    mais jai rien trouvé pour le saut de lignes...

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Personnellement, j'utilise les signets pour coller dans un document Word ce que je copie en Excel
    Si tu veux connaître l'instruction pour effectuer un saut de ligne, un saut de paragraphe ou un saut de page, l'enregistreur de macros de Word te donnera le code
    En attendant, voici une petite procédure de démonstration se trouvant dans un module Excel et qui ouvre un nouveau document Word et qui écrits une phrase avec saut de paragraphe et un mot
    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
    Sub WordWrite()
     Dim objWord As Object
     'On Error Resume Next
     Set objWord = CreateObject("Word.Application.8")
     objWord.Visible = True ' Affiche Word
     objWord.Documents.Add  'Ajoute un document
     With objWord.Selection
     .TypeParagraph
     .TypeText Text:="Procédure pour écrire dans Word "
     .TypeParagraph  ' Saut de paragraphe
     .TypeText Text:="Philippe :o)"
     .TypeParagraph
     End With
    'pour imprimer le document
    ' objWord.PrintOut
    Set objWord = Nothing
    End Sub
    Si ton tableau commence à la page 1 et continue page 2, tu peux parfaitement répéter les étiquettes de colonnes de ton tableau. C'est une fonctionnalité de Word
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 22
    Par défaut
    J'ai la commande pour le saut de page je cherche encore comment faire un "si le tableau est incomplet faire un aute de page" je vois ça de mon côté je reviens si je trouve pas merci.

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    comment faire un "si le tableau est incomplet faire un aute de page"
    Tu peux te baser sur le numéro de page par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Selection.Information(wdActiveEndPageNumber)
    ou le numéro de la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Selection.Information(wdFirstCharacterLineNumber)
    mais je ne comprends pas ce que tu cherches à faire car le saut de page est automatique et encore une fois rien ne t'empêche de répéter les étiquettes de colonnes.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 22
    Par défaut
    Bonjour Philippe, je reviens vers toi car j'ai trouvé une commende qui me permet de coller les tableaux là ou je veux 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
    Sub test()
     
    Dim appWord As Word.Application
    Dim docWord As Word.Document
     
     
    Set appWord = CreateObject("Word.Application")
    appWord.Visible = True
    Set docWord = appWord.Documents. _
    Open("C:\User\U515129\Documents\Cahier d'adaptation.docx", ReadOnly:=True)
     
    Worksheets("Creation Engine Handbook").Range("A1:B20").Copy
     
    Selection.MoveDown Unit:=wdLine, Count:=24
     
    appWord.Selection.Paste
     
    End Sub
    Le code s'incrémente et ouvre le document word mais une erreur d'éxecution '4248' apparaît.

Discussions similaires

  1. [WD-2007] Intéractivité entre Word et Excel-récupérer des données excel dans word
    Par manuseverine dans le forum VBA Word
    Réponses: 11
    Dernier message: 08/10/2018, 15h13
  2. [XL-2007] Mettre des données excel sur une carte internet
    Par guigui77 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/05/2014, 11h52
  3. [XL-2007] VBA problème pour passer des données EXCEL vers WORD
    Par nocontrol dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 28/07/2011, 10h01
  4. [VBA-E] Exporter des données Excel dans Word
    Par lucarno dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/08/2007, 19h25
  5. comment afficher des données Access sur Word ??
    Par merlubreizh dans le forum Access
    Réponses: 7
    Dernier message: 16/09/2005, 15h07

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