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 :

Communication avec Word [XL-2000]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124
    Par défaut Communication avec Word
    Bonjour,

    Je cherche comment ouvrir un document Word depuis Excel, effectuer une macro Word permettant de récupérer une donnée dans le fichier Word, puis copier cette donnée dans Excel.

    Ma Macro Word est la suivante:

    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
    Sub TEST()
     
    Dim TEXTE As String
    Dim NOMBRE
    TEXTE = ""
    NOMBRE = ""
     
    Selection.HomeKey Unit:=wdStory
    With Selection.Find
        .Text = "DEBIT"
        .Execute
        .Text = "^#"
        .Forward = True
        .Wrap = wdFindContinue
        .Execute
    End With
     
    Selection.MoveRight Unit:=wdCharacter, Count:=10, Extend:=wdExtend
    TEXTE = Selection.Range.Text
     
    For i = 1 To 10
        If IsNumeric(Mid(TEXTE, i, 1)) Or Mid(TEXTE, i, 1) = "," Then
            NOMBRE = NOMBRE & Mid(TEXTE, i, 1)
        Else
            Exit For
        End If
    Next i
     
    End Sub
    Je souhaiterais coller la variable "NOMBRE" (obtenue par la macro ci-dessus dans Word) dans la cellule A1 de ma feuille Excel.

    Qqn peut-il m'aider? Merci d'avance John81

  2. #2
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Pour faire cela fait une macro dans excel pour aller chercher l'info dans word.

    Et le tour est joué.

    Il y a de nombreux exemples sur le forum, une discussion par exemple à laquelle j'avais participé ici

  3. #3
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124
    Par défaut
    Merci aalex_38, mais j'ai un petit souci.

    Lorsque j'exécute mon code j'ai un souci au niveau de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    wrdApp.Selection.HomeKey Unit:=wdStory
    J'ai une
    erreur d'exécution '4120' Paramètre incorrect
    Alors que pourtant je reprends exactement ta procédure dans la discussion.

    Sais-tu pourquoi?

  4. #4
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Franchement là je vois pas si tu as bien repris toute la procèdure, ça devrait fonctionner, en tout cas ça fonctionnais chez moi.
    Si quelqu'un as un idée ???

  5. #5
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 124
    Par défaut
    L'ouverture du fichier Word se passe correctement, mais c'est au niveau de la ligne rouge(début du code sur l'application Word) que le problème se situe:

    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
    Sub WORD()
    Dim Wchemin As String
    Dim wrdApp As Object
    Dim wrdDoc As Object
    
    Wchemin = "R:\activite\DAI Activites\Jonathan\Facturation correspondant\WORD.doc"
    Set wrdApp = CreateObject("Word.Application")
    Set wrdDoc = wrdApp.documents.Open(Wchemin)
    wrdApp.Visible = True
     
    Dim TEXTE As String
    Dim NOMBRE
    TEXTE = ""
    NOMBRE = ""
    
    wrdApp.Selection.HomeKey Unit:=wdStory
    With wrdApp.Selection.Find
        .Text = FRAIS
        .Execute
    End With
    
    wrdApp.Selection.MoveRight Unit:=wdCharacter, Count:=3
    wrdApp.Selection.Expand Unit:=wdWord
    TEXTE = wrdApp.Selection.Range.Text
    If Not IsNumeric(TEXTE) Then
        NOMBRE = 0
    Else
        wrdApp.Selection.MoveRight Unit:=wdCharacter, Count:=10, Extend:=wdExtend
        TEXTE = wrdApp.Selection.Range.Text
        For i = 1 To 10
            If IsNumeric(Mid(TEXTE, i, 1)) Or Mid(TEXTE, i, 1) = "," Then
                NOMBRE = NOMBRE & Mid(TEXTE, i, 1)
            Else
                Exit For
            End If
        Next i
    End If
    
    MsgBox FRAIS & ":" & NOMBRE
       
    End Sub
    Merci de votre aide. John81

  6. #6
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Franchement je ne sasi pas ce qui se passe, word s'ouvre bien ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/10/2009, 01h48
  2. quelques soucis avec word 2000
    Par ramchou dans le forum Word
    Réponses: 3
    Dernier message: 06/09/2004, 18h13
  3. [Débutant][Applet] Communication avec Servlet - IO Exception
    Par gandalf_le_blanc dans le forum Applets
    Réponses: 35
    Dernier message: 16/04/2004, 13h29
  4. [OLE] Publipostage avec Word
    Par claude delattre dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 06/01/2004, 14h59
  5. [SSL]Communication avec un serveur en https
    Par menon dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 04/09/2003, 16h38

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