Comment placer du texte dans le presse-papiers de manière à ce qu'il soit collé sous forme de tableau dans Word?

StackOverflow https://stackoverflow.com/questions/297220

Question

À l'aide de VBA dans MS Office, comment puis-je ajouter du texte dans le Presse-papiers Windows afin qu'il soit collé dans Word sous forme de tableau?

Était-ce utile?

La solution

Le Presse-papiers Windows prend en charge plusieurs formats. Lorsque vous souhaitez placer des éléments dans le Presse-papiers, vous effectuez un ou plusieurs appels à RegisterClipboardFormat () en lui indiquant les formats des objets que vous allez placer dans le Presse-papiers, suivis d'appels à SetClipboardData () qui place les données dans le Presse-papiers. .

Si vous souhaitez pouvoir coller un tableau dans Word, le format HTML est le format le plus simple à utiliser. Il vous suffit de copier un tableau HTML dans le Presse-papiers pour le coller correctement dans Word, à condition que vous enregistriez d’abord les données du Presse-papiers en tant qu’objet HTML.

Je vous donnerais du code, mais il est plus simple de simplement citer un exemple sur MSDN:

Comment ajouter du code HTML au Presse-papiers à l'aide de Visual Basic

Cette page montre même un exemple de copie d'un tableau HTML dans le Presse-papiers.

Autres conseils

La réponse de Kluge est correcte, mais cet article différent sur MSDN contient un code plus facile à réutiliser: http://blogs.msdn.com/jmstall/archive/2007/01/21/html-clipboard.aspx

Avez-vous essayé de le formater sous forme de tableau HTML?

Cela fait longtemps que je n’ai pas fait de programmation Windows, mais je crois me souvenir que vous enregistrez le format de l’objet. En fait, vous pouvez enregistrer plusieurs objets de formats différents et l’application de collage peut choisir entre eux (comme avec l’option Coller spécial de Word).

J'essaierais de créer un objet de tableau Word, de remplir ses cellules avec vos données, puis de le copier dans le presse-papiers.

Le Presse-papiers est excellent ... Mais quelque chose semble un peu flou quant à son utilisation pour conserver la sortie de votre programme à coller dans Word. Qu'est-ce que vous essayez de faire et que vous devriez probablement faire d'une autre manière?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top