Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Copie Excel -> Word : pb PasteAndFormat

4 réponses
Avatar
Alex7r
Bonjour à tous,
Je rencontre un pb lors de la génération d'un document Word à partir
d'Excel. J'ai réalisé la procédure ci-dessous, mais le programme bloque sur
la dernière ligne : .Selection.PasteAndFormat Type:=wdFormatPlainText
En indiquant un simple .Selection.Paste, alors pas de pb.
Impossible de trouver le pourquoi du comment ... Pas de pb du côté du
débogueur ... Serait une macro complémentaire à activer ? Comment trouver
laquelle ?
Merci à tous pour votre aide
Alex7r

Sub CopieWord()
Dim docword As Word.Document
Dim Appword As Word.Application
Set Appword = New Word.Application
With Appword
Set docword = Appword.Documents.Open("D:\Doc.dot", ReadOnly:=True)
Appword.ShowMe
Appword.Visible = True
ThisWorkbook.Worksheets("Hyp").Range("CaseExcel").Copy
docword.Bookmarks("CaseExcel").Select
.Selection.PasteAndFormat Type:=wdFormatPlainText

4 réponses

Avatar
RGI
bonjour

cocher dans outils / références : Microsoft Word xx.x Object Library

Salutations

RGI


Bonjour à tous,
Je rencontre un pb lors de la génération d'un document Word à partir
d'Excel. J'ai réalisé la procédure ci-dessous, mais le programme bloque sur
la dernière ligne : .Selection.PasteAndFormat Type:=wdFormatPlainText
En indiquant un simple .Selection.Paste, alors pas de pb.
Impossible de trouver le pourquoi du comment ... Pas de pb du côté du
débogueur ... Serait une macro complémentaire à activer ? Comment trouver
laquelle ?
Merci à tous pour votre aide
Alex7r

Sub CopieWord()
Dim docword As Word.Document
Dim Appword As Word.Application
Set Appword = New Word.Application
With Appword
Set docword = Appword.Documents.Open("D:Doc.dot", ReadOnly:=True)
Appword.ShowMe
Appword.Visible = True
ThisWorkbook.Worksheets("Hyp").Range("CaseExcel").Copy
docword.Bookmarks("CaseExcel").Select
.Selection.PasteAndFormat Type:=wdFormatPlainText



Avatar
Alex7r
J'avais bien outil référence dans Excel 97, mais je dispose maintenant
d'Excel XP (2003). J'ai coché les deux Word dans MacroComplémentaires /
Automatisation, mais cela n'a pas suffit (WordEEFonts xx). Faut-il cocher
autre chose ?
Alex7r


bonjour

cocher dans outils / références : Microsoft Word xx.x Object Library

Salutations

RGI


Bonjour à tous,
Je rencontre un pb lors de la génération d'un document Word à partir
d'Excel. J'ai réalisé la procédure ci-dessous, mais le programme bloque sur
la dernière ligne : .Selection.PasteAndFormat Type:=wdFormatPlainText
En indiquant un simple .Selection.Paste, alors pas de pb.
Impossible de trouver le pourquoi du comment ... Pas de pb du côté du
débogueur ... Serait une macro complémentaire à activer ? Comment trouver
laquelle ?
Merci à tous pour votre aide
Alex7r

Sub CopieWord()
Dim docword As Word.Document
Dim Appword As Word.Application
Set Appword = New Word.Application
With Appword
Set docword = Appword.Documents.Open("D:Doc.dot", ReadOnly:=True)
Appword.ShowMe
Appword.Visible = True
ThisWorkbook.Worksheets("Hyp").Range("CaseExcel").Copy
docword.Bookmarks("CaseExcel").Select
.Selection.PasteAndFormat Type:=wdFormatPlainText






Avatar
RGI
c'est dans l'éditeur VBA qu'il faut cocher la référence

salutations

RGI



J'avais bien outil référence dans Excel 97, mais je dispose maintenant
d'Excel XP (2003). J'ai coché les deux Word dans MacroComplémentaires /
Automatisation, mais cela n'a pas suffit (WordEEFonts xx). Faut-il cocher
autre chose ?
Alex7r



bonjour

cocher dans outils / références : Microsoft Word xx.x Object Library

Salutations

RGI



Bonjour à tous,
Je rencontre un pb lors de la génération d'un document Word à partir
d'Excel. J'ai réalisé la procédure ci-dessous, mais le programme bloque sur
la dernière ligne : .Selection.PasteAndFormat Type:=wdFormatPlainText
En indiquant un simple .Selection.Paste, alors pas de pb.
Impossible de trouver le pourquoi du comment ... Pas de pb du côté du
débogueur ... Serait une macro complémentaire à activer ? Comment trouver
laquelle ?
Merci à tous pour votre aide
Alex7r

Sub CopieWord()
Dim docword As Word.Document
Dim Appword As Word.Application
Set Appword = New Word.Application
With Appword
Set docword = Appword.Documents.Open("D:Doc.dot", ReadOnly:=True)
Appword.ShowMe
Appword.Visible = True
ThisWorkbook.Worksheets("Hyp").Range("CaseExcel").Copy
docword.Bookmarks("CaseExcel").Select
.Selection.PasteAndFormat Type:=wdFormatPlainText








Avatar
MichDenis
Si tu dois travailler avec différentes versions d'office,
utilise dans ton code une "liaison tardive" pour la
création des objets. Le début de ton code se lirait
comme suit, et pour l'exécuter, tu n'as pas besoin de
déclarer une bibliothèque particulière.

P.S. Pour écrire le code, il peut être intéressant d'utiliser
la déclaration des variables tel que tu l'aa faite pour avoir
accès à la liste déroulante des propriétés et méthodes des
objets à la saisie du code. Lorsque ton programme fonctionne
tu modifies la déclaration des variables et tu décoches la
bibliothèque de Word et tu dis adieu à tes problèmes de
bibliothèque suivant la version de Word installée.


Dim docword As Object
Dim Appword As Object
Set Appword = CreateObject("Word.Application")
Appword.Visible = True
With Appword
Set docword = Appword.Documents.Open("D:Doc.dot", ReadOnly:=True)
'Reste de ta macro


"Alex7r" a écrit dans le message de news:

Bonjour à tous,
Je rencontre un pb lors de la génération d'un document Word à partir
d'Excel. J'ai réalisé la procédure ci-dessous, mais le programme bloque sur
la dernière ligne : .Selection.PasteAndFormat Type:=wdFormatPlainText
En indiquant un simple .Selection.Paste, alors pas de pb.
Impossible de trouver le pourquoi du comment ... Pas de pb du côté du
débogueur ... Serait une macro complémentaire à activer ? Comment trouver
laquelle ?
Merci à tous pour votre aide
Alex7r

Sub CopieWord()
Dim docword As Word.Document
Dim Appword As Word.Application
Set Appword = New Word.Application
With Appword
Set docword = Appword.Documents.Open("D:Doc.dot", ReadOnly:=True)
Appword.ShowMe
Appword.Visible = True
ThisWorkbook.Worksheets("Hyp").Range("CaseExcel").Copy
docword.Bookmarks("CaseExcel").Select
.Selection.PasteAndFormat Type:=wdFormatPlainText