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 :

données word vers excel


Sujet :

VBA Word

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut données word vers excel
    pardonnez les questions d'un néophyte.

    Je suis sur la construction d'un projet qui associe un fichier word et un fichier excel.
    le fichier Word se présente sous forme de fiche individuel de renseignements, 1 page par fiche.
    Mon objectif de travail est d'intégrer automatiquement les données de mes fiches word dans une base de donnée excel.
    je dois souffrir d'une insuffisance de mes connaissance en syntaxe : je souhaiterai que ma macro excel effectuent les opérations suivantes : pour chaque page du fichier word, selectionnerl la ligne 1, la copier, et la coller dans la derniere cellule vide de la colonne 1 du fichier excel.

    merci de votre aide.

  2. #2
    Membre du Club Avatar de Larsen21
    Inscrit en
    Décembre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 44
    Points : 46
    Points
    46
    Par défaut C'est toujours un début
    voila pour sélectionner la première ligne et faire un copier sur word tu tape ça dans ta macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend
        Selection.Copy
    puis pour excel il te faut pour reconnaitre la dernière ligne vide de la feuille taper ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      Sheets(Feuil).Select 'pour sélectionner ta feuille
     
        i = 1 'pour commencer le test a partir de cette ligne
        While Not IsEmpty(Cells(i, 1))
          i = i + 1
        Wend

    la valeur de i te donnera ainsi la valeur de la dernière ligne vide


    Je sais que ma réponse n'est pas complète mais c'est tout ce que je peux faire.


    A+

    en espérant t'avoir rendu service

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    merci pour ta réponse.
    c'est un point de départ.
    pour ma macro word: j'ai essayé un truc du type for each page next mais cela ne fonctionne pas, je suppute de devoir ajouter une ligne du type page 1 to "" mais ma syntaxe est vraiment défaillante dans word.

  4. #4
    Membre régulier
    Avatar de wape
    Profil pro
    Inscrit en
    Février 2003
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2003
    Messages : 90
    Points : 123
    Points
    123
    Par défaut
    Bonjour,

    Essaye éventuellement ceci (après avoir activé la référence "Microsoft Word X.0 Object Library") :

    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
    Dim oWdApp As Word.Application
    Dim oWdDoc As Word.Document
     
    Set oWdApp = CreateObject("Word.Application")
    Set oWdDoc = oWdApp.Documents.Open("C:\MonDocument.doc")
     
    'Parcourir les pages du document Word
    For i = 1 To oWdDoc.BuiltinDocumentProperties("Number of Pages")
       'Se positionner sur la première ligne
       oWdApp.Selection.GoTo wdGoToPage, wdGoToAbsolute, i
       'Sélectionner la ligne entière
       oWdApp.Selection.EndKey wdLine, wdExtend
       'Copier la sélection dans Excel
       With ThisWorkbook.Worksheets("Feuil1")
          .Range("A" & .Range("A65536").End(xlUp).Row + 1).Value = oWdApp.Selection.Text
       End With
    Next i
     
    oWdDoc.Close
    oWdApp.Quit
     
    Set oWdDoc = Nothing
    Set oWdApp = Nothing
    wape

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    merci pour la réponse mais j'échoue totalement

  6. #6
    Membre du Club Avatar de Larsen21
    Inscrit en
    Décembre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 44
    Points : 46
    Points
    46
    Par défaut il suffit parfois de trouver son bonheur
    je pense que ça va vraiment t'aider
    http://faqword.free.fr/articles.php?lng=fr&pg=61

    a+
    bonne soirée

Discussions similaires

  1. Export de données Word vers Excel
    Par Mickael013 dans le forum Word
    Réponses: 12
    Dernier message: 26/06/2011, 20h31
  2. Exportation de donnée Word vers Excel
    Par kekeandkeke dans le forum VBA Word
    Réponses: 2
    Dernier message: 13/10/2010, 16h59
  3. Export de données Word vers Excel
    Par kekeandkeke dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 29/09/2010, 00h32
  4. programme en vba qui permet le transfert des données word vers excel
    Par progaide dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/06/2009, 17h28
  5. Transfert de données Word vers Excel via macro
    Par Pascalou2008 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/03/2008, 22h02

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