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

Lazarus Pascal Discussion :

[COMOBJ] Copier/coller dans des documents Word


Sujet :

Lazarus Pascal

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    mars 2010
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 171
    Points : 162
    Points
    162
    Par défaut [COMOBJ] Copier/coller dans des documents Word
    Bonjour à tous,
    Je cherche désespérément à utiliser le copier coller de la totalité du texte d'un premier document WORD dans un second document WORD , tous deux gérés par l'intermédiaire de COMOBJ.
    J'ai pu créer et ouvrir les deux documents sans problème particulier mais mes tentatives de copier-coller par code entre ces documents ont été vaines, que ce soit par l'intermédiaire d'une macro VBA de Word ou en passant par le presse papier.
    Le code actuel est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    vWDocument := vwDocuments.Add;
      vWDocument.saveAs(NouvDoc) ;  // le document word dans lequel doit être collé le texte du document word dont le nom est OuvrDoc
      vWDocument := vWDocuments.Open(OuvrDoc);
      vWDocument.Activate;
      Texte1 := vWDocument.Content.select ;
      ClipBoard.Clear ;
      Clipboard.AsText := ' ceci est un essai' ; // Ce texte est un texte d'essai. En réalité le texte à copier est le contenu de la variable Texte1 qui est censé être le texte du document Word        OuvrDoc
      vWDocument.Close ;
      vWDocument := vWDocuments.open(NouvDoc) ;
      vWDocument.Activate;
      vWDocument.Content := ClipBoard.AsText ;
      vWDocument.Close ;
    Je vous remercie par avance pour les solutions qui pourront m'être proposées.

    Cordialement

    R.O.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    mars 2010
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 171
    Points : 162
    Points
    162
    Par défaut ComObj - Copier Collere dans des documents Word
    Bonjour à tous,

    Depuis mon message, le code a un peu évolué et il permet effectivement de récupérer le texte du document 'OuvrDoc' dans le presse papier (vérifié après un coller dans Notepad). Il reste maintenant à faire accepter le texte par le document 'NouvDoc' avec une nouveauté : après avooir sélectionné le texte de OuvrDoc, le document est verrouillé en lecture seule ce qui est ennuyeux. Comment le libérer de ce verrouillage ?

    le nouveau code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     vWDocument := vwDocuments.Add;
      vWDocument.saveAs(NouvDoc) ;
      vWDocument := vWDocuments.Open(OuvrDoc); // le document Word dont la totalité du texte doit être copié
      vWDocument.Activate;
      vWDocument.Content.select ; 
      vWDocument.Content.Copy ; 
      vWDocument.Close ;  //fermeture du document OuvrDoc . Peut-être faut-il déselectionner le texte  avant de fermer le document
      vWDocument := vWDocuments.open(NouvDoc) ; // Le document vierge qui doit recevoir le texte contenu dans le presse papier 
      vWDocument.Activate;
      vWDocument.Content := ClipBoard.AsText ;  // L'instruction censé injecter le contenu du presse-papier dans le document vierge -- RIEN NE SE PASSE 
      ClipBoard.Clear ;
      vWDocument.Close ;
    cela a donc avancé un peu.... mais si peu !!!
    Merci pour vos suggestions.
    Cordialement


    R.O.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    mars 2010
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2010
    Messages : 171
    Points : 162
    Points
    162
    Par défaut ComObj - Copier Coller dans des documents Word
    Re.. BOnjour,

    Il semble que poster sur le forum stimule car en remplaçant la ligne 10 du code le contenu du document es bien collé.
    IL reste donc le problème du verrouillage et la fermeture de Word à gérer.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      vWDocument := vWDocuments.open(NouvDoc) ;
      vWDocument.Activate;
      vWDocument.Content := ClipBoard.AsText ;
      vWDocument.Close ;
    devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     vWDocument := vWDocuments.open(NouvDoc) ;
     vWDocument.Activate;
      vWDocument.Content.paste ; 
      vWDocument.Close ;
    Cordialement
    R.O.

Discussions similaires

  1. [XL-2013] Anomalie sur la modification d'hyperliens dans des documents Word
    Par Brennus31 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/04/2019, 11h42
  2. Réponses: 2
    Dernier message: 16/04/2015, 14h04
  3. [XL-2010] Recherche multiple d’occurrences dans des documents Word depuis un fichier Excel
    Par Meynur dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/04/2015, 17h16
  4. Réponses: 33
    Dernier message: 22/08/2011, 15h33
  5. Recherche de contenu dans des documents (Word, Excel, PDF ..)
    Par Morad ISSOULGHANE dans le forum ASP.NET
    Réponses: 2
    Dernier message: 26/02/2010, 13h48

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