2013-09-05 86 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