2013-09-05 301 views
1

我有一个宏,它目前从Excel电子表格中的一系列单元格中复制一个表格,然后将其粘贴到Word文档中宏作为WordApp)。不过,我希望通过粘贴选项“使用目标样式”将其粘贴到Word文档中,该选项是Word中粘贴样式选项之一。有谁知道是否有方法将其嵌入到Excel的VBA代码中?使用VBA将表格从Excel粘贴到Word中作为“使用目标样式”粘贴

这里是我当前的代码(假设“WordApp”是暗淡的字应用程序,并且已经在代码中考虑了新的文档)。

  'Select table data 
      Sheets("Sheet3").Select 
      Range("I11:P18").Select 
      Selection.Copy 
     'Paste table into word doc 
      WordApp.Selection.TypeParagraph 
      WordApp.Selection.Paste 

任何帮助将不胜感激,所以我终于可以完成这个庞大的VBA项目!

编辑:

不幸的是,这并不工作 - 它粘贴它,我不想要的格式。我尝试使用此代码,但我得到一个运行时错误5342,它说“指定的数据类型不可用”,并强调.PasteAndFormat代码行。有谁知道为什么会有错误?我从对象浏览器的代码,所以我不知道为什么它不承认它:

 Sheets("Sheet3").Select 
     Range("H21:P34").Select 
     Selection.Copy 
    'Paste Q1-7 table into word doc 
     WordApp.Selection.PasteAndFormat (WdPasteOptions.wdUseDestinationStyles) 

请,谁可以解决这个问题,我真的很感激它。这是我一直在研究的一个巨大的宏项目的最后一个细节,我只想把它包装起来。

回答

0
WordApp.Selection.Range.PasteSpecial DataType:=wdPasteText 

这是行得通吗?我有一个只将一个单元格文本粘贴到Word中的宏,但我没有可用的资源在Word中测试它。 (如果我有50位代表,我会写一条评论,所以很抱歉为此做出完整的回答)。

+0

查看上面的编辑。 – Ryan

+0

没有工作。请参阅上述编辑。 – Ryan

1

我想出了我自己的想法。下面是将代码粘贴为表格的代码,这是我希望粘贴的方式,无需将单词的粘贴用作目标样式选项。

 Sheets("Sheet3").Select 
     Range("H21:P34").Select 
     Selection.Copy 
    'Paste Q1-7 table into word doc 
     WordApp.Selection.PasteExcelTable False, True, False